Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Side by Side Diff: src/regexp-macro-assembler-irregexp.h

Issue 12406: Case independent back references. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/regexp2000/
Patch Set: Created 12 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2008 the V8 project authors. All rights reserved. 1 // Copyright 2008 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 virtual void LoadCurrentCharacter(int cp_offset, Label* on_end_of_input); 58 virtual void LoadCurrentCharacter(int cp_offset, Label* on_end_of_input);
59 virtual void CheckCharacterLT(uc16 limit, Label* on_less); 59 virtual void CheckCharacterLT(uc16 limit, Label* on_less);
60 virtual void CheckCharacterGT(uc16 limit, Label* on_greater); 60 virtual void CheckCharacterGT(uc16 limit, Label* on_greater);
61 virtual void CheckCharacter(uc16 c, Label* on_equal); 61 virtual void CheckCharacter(uc16 c, Label* on_equal);
62 virtual void CheckNotCharacter(uc16 c, Label* on_not_equal); 62 virtual void CheckNotCharacter(uc16 c, Label* on_not_equal);
63 virtual void CheckNotCharacterAfterOr(uc16 c, uc16 mask, Label* on_not_equal); 63 virtual void CheckNotCharacterAfterOr(uc16 c, uc16 mask, Label* on_not_equal);
64 virtual void CheckNotCharacterAfterMinusOr(uc16 c, 64 virtual void CheckNotCharacterAfterMinusOr(uc16 c,
65 uc16 mask, 65 uc16 mask,
66 Label* on_not_equal); 66 Label* on_not_equal);
67 virtual void CheckNotBackReference(int start_reg, Label* on_no_match); 67 virtual void CheckNotBackReference(int start_reg, Label* on_no_match);
68 virtual void CheckNotBackReferenceCaseIndependent(int start_reg,
69 Label* on_no_match);
68 virtual void CheckCharacters(Vector<const uc16> str, 70 virtual void CheckCharacters(Vector<const uc16> str,
69 int cp_offset, 71 int cp_offset,
70 Label* on_failure); 72 Label* on_failure);
71 virtual void CheckCurrentPosition(int register_index, Label* on_equal); 73 virtual void CheckCurrentPosition(int register_index, Label* on_equal);
72 virtual void CheckBitmap(uc16 start, Label* bitmap, Label* on_zero); 74 virtual void CheckBitmap(uc16 start, Label* bitmap, Label* on_zero);
73 virtual void DispatchHalfNibbleMap(uc16 start, 75 virtual void DispatchHalfNibbleMap(uc16 start,
74 Label* half_nibble_map, 76 Label* half_nibble_map,
75 const Vector<Label*>& destinations); 77 const Vector<Label*>& destinations);
76 virtual void DispatchByteMap(uc16 start, 78 virtual void DispatchByteMap(uc16 start,
77 Label* byte_map, 79 Label* byte_map,
78 const Vector<Label*>& destinations); 80 const Vector<Label*>& destinations);
79 virtual void DispatchHighByteMap(byte start, 81 virtual void DispatchHighByteMap(byte start,
80 Label* byte_map, 82 Label* byte_map,
81 const Vector<Label*>& destinations); 83 const Vector<Label*>& destinations);
82 virtual void IfRegisterLT(int register_index, int comparand, Label* if_lt); 84 virtual void IfRegisterLT(int register_index, int comparand, Label* if_lt);
83 virtual void IfRegisterGE(int register_index, int comparand, Label* if_ge); 85 virtual void IfRegisterGE(int register_index, int comparand, Label* if_ge);
84 86
85 virtual IrregexpImplementation Implementation(); 87 virtual IrregexpImplementation Implementation();
86 virtual Handle<Object> GetCode(); 88 virtual Handle<Object> GetCode();
87 private: 89 private:
88 IrregexpAssembler* assembler_; 90 IrregexpAssembler* assembler_;
89 }; 91 };
90 92
91 } } // namespace v8::internal 93 } } // namespace v8::internal
92 94
93 #endif // V8_REGEXP_MACRO_ASSEMBLER_IRREGEXP_H_ 95 #endif // V8_REGEXP_MACRO_ASSEMBLER_IRREGEXP_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698