forked from mirrors/gecko-dev
		
	Bug 1942881: Remove RRegExpMatcher r=jandem, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236071
This commit is contained in:
		
							parent
							
								
									26960c9b19
								
							
						
					
					
						commit
						1594f8f8d0
					
				
					 3 changed files with 0 additions and 38 deletions
				
			
		|  | @ -1260,7 +1260,6 @@ | ||||||
|     lastIndex: Int32 |     lastIndex: Int32 | ||||||
|   result_type: Value |   result_type: Value | ||||||
|   possibly_calls: true |   possibly_calls: true | ||||||
|   can_recover: true |  | ||||||
| 
 | 
 | ||||||
| # Note: this instruction writes to cx->regExpSearcherLastLimit. | # Note: this instruction writes to cx->regExpSearcherLastLimit. | ||||||
| # See also MRegExpSearcherLastLimit. | # See also MRegExpSearcherLastLimit. | ||||||
|  | @ -1271,7 +1270,6 @@ | ||||||
|     lastIndex: Int32 |     lastIndex: Int32 | ||||||
|   result_type: Int32 |   result_type: Int32 | ||||||
|   possibly_calls: true |   possibly_calls: true | ||||||
|   can_recover: false |  | ||||||
| 
 | 
 | ||||||
| # This instruction loads cx->regExpSearcherLastLimit. We don't have a | # This instruction loads cx->regExpSearcherLastLimit. We don't have a | ||||||
| # specialized alias set for this so just use the default alias set similar to | # specialized alias set for this so just use the default alias set similar to | ||||||
|  | @ -1286,7 +1284,6 @@ | ||||||
|     string: String |     string: String | ||||||
|   result_type: Value |   result_type: Value | ||||||
|   possibly_calls: true |   possibly_calls: true | ||||||
|   can_recover: false |  | ||||||
| 
 | 
 | ||||||
| - name: RegExpExecTest | - name: RegExpExecTest | ||||||
|   operands: |   operands: | ||||||
|  | @ -1294,7 +1291,6 @@ | ||||||
|     string: String |     string: String | ||||||
|   result_type: Boolean |   result_type: Boolean | ||||||
|   possibly_calls: true |   possibly_calls: true | ||||||
|   can_recover: false |  | ||||||
| 
 | 
 | ||||||
| - name: RegExpHasCaptureGroups | - name: RegExpHasCaptureGroups | ||||||
|   operands: |   operands: | ||||||
|  |  | ||||||
|  | @ -11,7 +11,6 @@ | ||||||
| #include "jsmath.h" | #include "jsmath.h" | ||||||
| 
 | 
 | ||||||
| #include "builtin/Object.h" | #include "builtin/Object.h" | ||||||
| #include "builtin/RegExp.h" |  | ||||||
| #include "builtin/String.h" | #include "builtin/String.h" | ||||||
| #include "jit/AtomicOperations.h" | #include "jit/AtomicOperations.h" | ||||||
| #include "jit/Bailouts.h" | #include "jit/Bailouts.h" | ||||||
|  | @ -1447,30 +1446,6 @@ bool RNaNToZero::recover(JSContext* cx, SnapshotIterator& iter) const { | ||||||
|   return true; |   return true; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| bool MRegExpMatcher::writeRecoverData(CompactBufferWriter& writer) const { |  | ||||||
|   MOZ_ASSERT(canRecoverOnBailout()); |  | ||||||
|   writer.writeUnsigned(uint32_t(RInstruction::Recover_RegExpMatcher)); |  | ||||||
|   return true; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| RRegExpMatcher::RRegExpMatcher(CompactBufferReader& reader) {} |  | ||||||
| 
 |  | ||||||
| bool RRegExpMatcher::recover(JSContext* cx, SnapshotIterator& iter) const { |  | ||||||
|   RootedObject regexp(cx, iter.readObject()); |  | ||||||
|   RootedString input(cx, iter.readString()); |  | ||||||
| 
 |  | ||||||
|   // Int32 because |lastIndex| is computed from transpiled self-hosted call.
 |  | ||||||
|   int32_t lastIndex = iter.readInt32(); |  | ||||||
| 
 |  | ||||||
|   RootedValue result(cx); |  | ||||||
|   if (!RegExpMatcherRaw(cx, regexp, input, lastIndex, nullptr, &result)) { |  | ||||||
|     return false; |  | ||||||
|   } |  | ||||||
| 
 |  | ||||||
|   iter.storeInstructionResult(result); |  | ||||||
|   return true; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| bool MTypeOf::writeRecoverData(CompactBufferWriter& writer) const { | bool MTypeOf::writeRecoverData(CompactBufferWriter& writer) const { | ||||||
|   MOZ_ASSERT(canRecoverOnBailout()); |   MOZ_ASSERT(canRecoverOnBailout()); | ||||||
|   writer.writeUnsigned(uint32_t(RInstruction::Recover_TypeOf)); |   writer.writeUnsigned(uint32_t(RInstruction::Recover_TypeOf)); | ||||||
|  |  | ||||||
|  | @ -109,7 +109,6 @@ namespace jit { | ||||||
|   _(Random)                       \ |   _(Random)                       \ | ||||||
|   _(StringSplit)                  \ |   _(StringSplit)                  \ | ||||||
|   _(NaNToZero)                    \ |   _(NaNToZero)                    \ | ||||||
|   _(RegExpMatcher)                \ |  | ||||||
|   _(StringReplace)                \ |   _(StringReplace)                \ | ||||||
|   _(Substr)                       \ |   _(Substr)                       \ | ||||||
|   _(TypeOf)                       \ |   _(TypeOf)                       \ | ||||||
|  | @ -685,14 +684,6 @@ class RNaNToZero final : public RInstruction { | ||||||
|   bool recover(JSContext* cx, SnapshotIterator& iter) const override; |   bool recover(JSContext* cx, SnapshotIterator& iter) const override; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| class RRegExpMatcher final : public RInstruction { |  | ||||||
|  public: |  | ||||||
|   RINSTRUCTION_HEADER_NUM_OP_(RegExpMatcher, 3) |  | ||||||
| 
 |  | ||||||
|   [[nodiscard]] bool recover(JSContext* cx, |  | ||||||
|                              SnapshotIterator& iter) const override; |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| class RStringReplace final : public RInstruction { | class RStringReplace final : public RInstruction { | ||||||
|  private: |  private: | ||||||
|   bool isFlatReplacement_; |   bool isFlatReplacement_; | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Iain Ireland
						Iain Ireland