+2009-02-16 Jb Evain <jbevain@novell.com>
+
+ * Regex.cs: on the NET_2_1 profile, always use the old engine for now.
+
+2009-02-14 Zoltan Varga <vargaz@gmail.com>
+
+ * Regex.cs: Add a MONO_NEW_RX variable to enable the new regex
+ engine.
+
+2009-02-04 Zoltan Varga <vargaz@gmail.com>
+
+ * Regex.cs: Disable the new regex engine for now.
+
+2009-01-14 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Avoid throwing exceptions for a few more unhandled opcodes.
+ Implement the reverse/ignorecase versions of Reference. Fix the reverse
+ version of Bitmap. Error out if a Jump opcode jumps outside the current
+ pc range. This works around #466151.
+
+2009-01-12 Jb Evain <jbevain@novell.com>
+
+ * RxInterpreter.cs: set trace_rx to false for NET_2_1.
+ * Regex.cs: set old_rx to false for NET_2_1.
+
+2009-01-07 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs: Add support for constant strings in anchors. Fixes
+ #464135.
+
+2008-11-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * cache.cs: avoid infinite loop.
+
+2008-11-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * cache.cs:
+ * Regex.cs: honor CacheSize value.
+
+2008-11-13 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs: Fix pc computation in various opcodes. Fixes #443841.
+
+2008-11-11 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement Reference opcode.
+
+2008-10-30 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement SubExpression opcode.
+
+ * CILCompiler.cs: Save and restore strpos in the Test opcode. Fixes
+ #439947.
+
+2008-10-25 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement Test opcode.
+
+2008-10-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * RxInterpreter.cs: implement missing Unicode* opcodes and
+ StringReverseIgnoreCase.
+
+2008-10-25 Zoltan Varga <vargaz@gmail.com>
+
+ * RxOp.cs: Remove unused Generic opcodes.
+
+ * RxCompiler.cs: Emit opcodes with flags using methods which can be
+ overriden by CILCompiler.cs, so we only have to override a few methods.
+
+ * CILCompiler.cs: Simplify based on the RxCompiler changes. Implement
+ UnicodeString opcode. Throw a NotImplementedException when an unsupported
+ opcode is encountered, since the IL compiler is now believed to be feature
+ complete.
+
+2008-10-24 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs CILCompiler.cs gen-interp.cs: Fix the reading of short
+ values from the instruction stream.
+
+ * RxOp.cs: Add some missing unicode opcodes.
+
+ * gen-interp.cs RxInterpreter.cs: Generate Bitmap/UnicodeBitmap opcodes too.
+
+ * CILCompiler.cs (EmitEvalMethodBody): Add an 'end_pc' argument to mark the
+ end of the bytecode range which needs to be compiled. Use it to avoid
+ compiling the same bytecode multiple times in various opcodes. Fix
+ RxOp.Jump implementation. Add implementation for unicode opcodes.
+
+2008-10-09 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement NoBitmap/NoBitmapIgnoreCase. Fixes #432172.
+
+2008-09-14 Zoltan Varga <vargaz@gmail.com>
+
+ * gen-interp.cs: New file to generate the all variants of the character
+ checking opcodes in RxInterpreter.cs.
+
+ * RxInterpreter.cs: Replace hand written code with code generated by
+ gen-interp.cs.
+
+ * RxInterpreter.cs: Fix the failure case of the No<XXX> opcodes. Fixes
+ #426142.
+
+2008-09-13 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs RxCompiler.cs: Implement some missing Category opcodes.
+
+2008-09-07 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Override ICompiler.EmitSet too so we set op_flags for
+ Bitmap opcodes too. Fixes #424073.
+
+2008-09-06 Zoltan Varga <vargaz@gmail.com>
+
+ * Regex.cs: Make the new regex interpreter+compiler the default.
+
+2008-08-31 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs: Port the Anchor+StartOfString optimization from the old
+ interpreter. Add credits.
+
+ * RxCompiler.cs (EmitString): Lowercase the string if ignore is true.
+
+ * CILCompiler.cs: Fix the setting of the match position in the
+ anchor+char optimization.
+
+ * CILCompiler.cs: Implement FastRepeatLazy.
+
+ * CILCompiler.cs: Get rid of commented out code. Also get rid of
+ frame.local_strpos_res, since the generated code already set Arg1 to
+ the same value.
+
+2008-08-30 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Initialize all mi_ variables lazily.
+
+ * CILCompiler.cs: Implement FastRepeat.
+
+ * RxInterpreter.cs: Add back SetStartOfMatch, make it protected so as to
+ avoid a warning.
+
+ * CILCompiler.cs RxOp.cs: Merge lots of changes from RxInterpreter.cs,
+ refactor the code.
+
+2008-08-29 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs RxCompiler.cs RxOp.cs: Implement/fix this so all the
+ regex tests now run. The Repeat code is taken from the old interpreter.
+
+2008-08-28 Zoltan Varga <vargaz@gmail.com>
+
+ * RxInterpreter.cs RxCompiler.cs RxOp.cs: Add support for
+ Category.AnySingleline.
+
+2008-08-27 Zoltan Varga <vargaz@gmail.com>
+
+ * RxCompiler.cs: Use Array.Copy since Buffer.BlockCopy operates on bytes.
+
+2008-07-31 Jb Evain <jbevain@novell.com>
+
+ * BaseMachine.cs: clean up for NET_2_1.
+
+2008-06-05 Roei Erez <roeie@mainsoft.com>
+
+ * JvmReMachine.jvm.cs: Fix a bug in match that contains
+ empty group at the end.
+
+2008-04-13 Jb Evain <jbevain@novell.com>
+
+ * Regex.cs: update undocumented fields for the 2.1 profile.
+ Merged from the Moonlight 2 branch.
+
+2008-02-26 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement StringIgnoreCase.
+
+ * CILCompiler.cs: Implement grouping support.
+
+ * CILCompiler.cs: Implement character groups.
+
+2008-02-25 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Implement lots of missing opcodes.
+
+2008-02-18 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs (EmitEvalMethodBody): Check for the not-yet supported
+ groups.Count > 1.
+
+Thu Feb 14 19:03:00 CET 2008 Paolo Molaro <lupus@ximian.com>
+
+ * RxCompiler.cs, RxInterpreter.cs, RxOp.cs, CILCompiler.cs : support for word
+ boundary position opcodes, ignorecase backreference and more capture
+ work.
+
+Thu Feb 14 17:11:10 CET 2008 Paolo Molaro <lupus@ximian.com>
+
+ * RxCompiler.cs, RxInterpreter.cs, RxOp.cs: replace EcmaDigit with
+ Range, fixed matching of "" =~ /$/, implementedt TestCharGroup.
+ Fixes and other misc opcodes implemented.
+
+2008-02-13 Zoltan Varga <vargaz@gmail.com>
+
+ * CILCompiler.cs: Restructure some code to avoid a branch inside a loop.
+
+ * CILCompiler.cs: Fix the unsafe string matching code.
+
+ * CILCompiler.cs: Improved version which emits only one method in most cases.
+
+ * CILCompiler.cs: Fix some comments.
+
+ * CILCompiler.cs: New file, extracted from RxCompiler.cs.
+
+ * RxInterpreter.cs RxCompiler.cs: First version of regex IL compiler.
+
+Wed Feb 13 13:18:12 CET 2008 Paolo Molaro <lupus@ximian.com>
+
+ * RxCompiler.cs, RxInterpreter.cs, RxOp.cs: unicode categories and
+ some grouping/capture support.
+
+Tue Feb 12 19:16:49 CET 2008 Paolo Molaro <lupus@ximian.com>
+
+ * RxCompiler.cs, RxInterpreter.cs, RxOp.cs: experimental new
+ interpreter.
+
2008-02-10 Zoltan Varga <vargaz@gmail.com>
+ * replace.cs (NeedsGroupsOrCaptures): New property. Determines whenever the
+ replacement process needs access to the groups or captures properties of the
+ Match object.
+
+ * Group.cs: Add an internal ctor which avoids allocations.
+
+ * Match.cs: Ditto.
+
+ * BaseMachine.cs interpreter.cs: Add an optimization to avoid fully creating
+ Match objects during Replace () if the replacement string is simple.
+
+ * BaseMachine.cs Regex.cs: Make LTRReplace and RTLReplace instance methods to
+ avoid creating two machines for each Regex.Replace () call.
+
* interpreter.cs (Eval): Remove a needless string allocation.
2007-12-04 Arina Itkes <arinai@mainsoft.com>