Граф коммитов

84 Коммитов

Автор SHA1 Сообщение Дата
jfrijters c6e3c87af1 Added (unused) debugging method to dump a method to the console. 2010-09-27 09:37:02 +00:00
jfrijters 8375659166 Convert javac synchronized block fault handlers into finally handlers. 2010-09-27 05:48:40 +00:00
jfrijters ba28c0c14d Implemented first stab at converting suitable fault blocks into finally blocks. 2010-09-27 04:42:56 +00:00
jfrijters 7f3b28c129 Restructured method analyzer/verifier to make data flow more obvious and keep less data alive during compilation. 2010-09-22 04:01:36 +00:00
jfrijters 22381efaab Seal classes and make fields readonly. 2010-09-14 09:02:21 +00:00
jfrijters 3797879e66 Moved local variable analysis from verifier.cs to new file LocalVars.cs. 2010-09-14 07:38:42 +00:00
jfrijters b8cb939d6c Moved local variable analysis into a separate pass. 2010-09-14 05:57:24 +00:00
jfrijters 4f002b9468 Consolidated all bytecode flow control properties. 2010-09-13 06:53:16 +00:00
jfrijters 63b3bcec7f Remove unneeded call to ComputePartialReachability(). 2010-09-13 05:10:19 +00:00
jfrijters 94f7513960 Fixed another verifier regression introduced with try/fault handler changes. 2010-08-03 12:43:58 +00:00
jfrijters 3fa99010ee Made most static compiler warnings local to the target that is being compiled (in multi target mode), to allow warnings to be suppressed (or turned into an error) for a specific target. 2010-07-16 08:50:40 +00:00
jfrijters 0feee7bea0 Fixed verifier regression introduced with try/fault handler changes. Thanks to Enrico Minack for reporting this. 2010-07-12 06:57:23 +00:00
jfrijters 0ed13314f0 Implemented codegen improvement to use CLR fault handlers for Java catch all handlers, whenever possible. 2010-06-08 05:25:14 +00:00
jfrijters 3ca0627114 Since we're no longer modifying the instructions, there's no reason to pass it around instead of using it directly from the Method object. 2010-06-08 04:15:39 +00:00
jfrijters 311379f2ce Made ExceptionTableEntry completely immutable by making ordinal readonly as well. 2010-06-07 12:36:49 +00:00
jfrijters 03361a778a Made ExceptionTableEntry mostly immutable (ordinal will be next). 2010-06-07 10:05:28 +00:00
jfrijters 7dfb0107c4 Removed mutable flags field from Instruction. 2010-06-07 06:13:05 +00:00
jfrijters 7a55f7c03c Moved type flow and optimization passes into separate methods. 2010-06-02 12:38:15 +00:00
jfrijters f9bb92b3f2 Fixed theoretical issue in RemoveAssertions optimization. 2010-06-02 12:29:16 +00:00
jfrijters 9752893b47 Split analysis steps into separate methods. 2010-06-02 10:31:58 +00:00
jfrijters 4126779d1b Made the "unnecessary" exception handler removal a little less conservative. 2010-06-02 07:43:51 +00:00
jfrijters 393dc88577 Moved exception untangling code into MethodAnalyzer where it makes more sense. 2010-06-02 06:37:35 +00:00
jfrijters 6d3632f144 Removed unused code. 2010-05-31 09:33:28 +00:00
jfrijters d1e163408f Removed IKVM_REF_EMIT, as STATIC_COMPILER or STUB_GENERATOR now always implies IKVM.Reflection. 2010-01-28 09:18:33 +00:00
jfrijters 05180f101b Moved VerifierTypeWrapper from verifier.cs to TypeWrapper.cs, to avoid new stub generator (to be checked in later) to have to include verifier.cs
(also made VerifierTypeWrapper sealed)
2010-01-28 06:09:20 +00:00
jfrijters dbd6df02ae Integrated new IKVM.Reflection implementation. 2010-01-25 07:52:27 +00:00
jfrijters db9c796794 Removed vestigial compact framework support. 2009-08-28 06:47:16 +00:00
jfrijters 35d71675e8 Small code cleanup. Changed a couple of abstract methods in TypeWrapper to virtual and provided a default implementation and removed the implementation from a number of subclasses. 2009-08-28 06:20:22 +00:00
jfrijters 53953bd7e7 When unsharing the localstoresite array, mark each individual entry as shared. I don't think this was actually a bug due to the specifics of how sharing work, but it definitely was a bug waiting to happen. 2009-06-18 06:29:05 +00:00
jfrijters 1dc4224163 Removed code that is no longer used (because of the jsr/ret split off) from instruction state merging. 2009-06-18 06:27:11 +00:00
jfrijters 5b9bcb49e1 Fixed bug in local variable store site merging. 2009-06-18 06:22:29 +00:00
jfrijters fe3d744e76 Removed unnecessary IsEmpty property from LocalStoreSites. 2009-06-18 06:21:11 +00:00
jfrijters 62e4bc8b12 Removed jsr/ret support. 2009-04-16 05:44:48 +00:00
jfrijters 70b04e174e Changed bytecode stream and exception tables to use instruction indexes instead of PC. 2009-04-07 04:53:56 +00:00
jfrijters b33c19f438 Handle invokespecials that have been turned into errors in local variable analysis. 2009-02-04 06:52:53 +00:00
jfrijters 94f4fe2ee2 Make ikvmc emit a warning whenever it emits code that throws a hard error. 2008-12-23 06:07:10 +00:00
jfrijters 93fc80927d Fix bug in handling of jsr instruction. 2008-11-14 07:54:11 +00:00
jfrijters 684cdf651e Generified all collections. 2008-08-15 12:01:06 +00:00
jfrijters 0ddb43d120 Replaced explicit usage of System.Reflection.Emit types with "using System.Reflection.Emit;" to make switching to Cecil easier. 2008-08-12 14:45:23 +00:00
jfrijters 018eaf5acb Restructured code to remove (mcs) compiler warnings. 2008-05-20 07:43:42 +00:00
jfrijters d04c813e3f - Added -removeassertions optimization option to ikvmc.
- Added -removeassertions to IKVM.OpenJDK.ClassLibrary.dll build.
- Don't look at unreachable instructions when determining if a method needs a line number table.
2008-02-27 09:04:19 +00:00
jfrijters 1c3e9561fe Handle converting forms of fstore/dstore to prevent Debug.Assert from firing. 2008-02-09 17:35:30 +00:00
jfrijters 3072c89696 - Removed .NET 1.1 specific code
- Removed conditional compilation of .NET 2.0 specific code
2007-11-26 08:38:38 +00:00
jfrijters 255c73356c Implemented improved floating point compliance. 2007-08-08 13:51:55 +00:00
jfrijters 1829cab477 Fixed verifier/compiler to support dup_x2 form 2. Found by Derby test suite. Thanks to Albert Strasheim. 2007-05-04 06:41:46 +00:00
jfrijters 0b9b0ee2d3 - Changed ikvmc to fail with a Link Error when it detects a loader constraints violation (instead of emitting code that throws a LinkageError at runtime). 2007-02-01 07:13:02 +00:00
jfrijters 637dea4dfc *** empty log message *** 2006-08-31 09:22:10 +00:00
jfrijters 7f0d951c64 *** empty log message *** 2006-08-29 06:28:34 +00:00
jfrijters a6f7f9c232 *** empty log message *** 2006-08-21 05:15:51 +00:00
jfrijters c5a3ee90b3 *** empty log message *** 2006-08-06 09:27:20 +00:00