+2008-05-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_ldsfld_no_fld.il: Fixed compilation
+ and renamed to invalid_ldsfld_no_fld.il.
+
+ * BatchCompiler.cs: New driver to fast compile the
+ verifier test suite. It's about 20x faster now.
+
+ * Makefile: Use the ilasm driver for faster compilation.
+
+2008-04-30 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_il_overflow_test.sh: New test generator
+ for a truncated IL stream.
+
+ * make_tests.sh: Fixed generation script. Added
+ tests using the new generator.
+
+2008-04-23 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: Add some tests for overlapping
+ aligned reference fields.
+
+ * Makefile: Added new test prefix typeunverifiable.
+ It should be used for tests that type fails to load
+ only under verifiable.
+
+2008-04-15 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_boxed_genarg_test.sh: New test generator
+ for boxed generic arguments.
+
+ * make_test.sh: Added tests using the new generator
+ for the interaction between boxed generic arguments
+ and its constraint types.
+
+2008-04-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * AssemblyRunner.cs: If a VerificationException
+ happens while running under fulltrust, it means
+ that the code is invalid.
+
+ * make_method_constraint_test.sh: Test generator for
+ generic methods argument constraints.
+
+ * make_test.sh: Added tests for invalid opcodes
+ using the new generator.
+
+ * invalid_generic_method_and_type.il: New test
+ for generic constraints.
+
+2008-04-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_bad_op_test.sh: Test generator for
+ invalid opcodes.
+
+ * make_test.sh: Added tests for invalid opcodes
+ using the new generator.
+
+2008-04-08 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_overlapped_test.sh: Test generator for
+ overlapped fields.
+
+ * make_test.sh: Added tests for overlapped
+ fields using the new generator.
+
+2008-04-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_unary_test.sh: Clear the stack before ret.
+
+ * make_test.sh: Added tests for ckfinite.
+
+2008-04-04 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tail_call_test.sh: New test generator for
+ tail prefix.
+
+ * make_test.sh: Added tests using the new generator.
+
+2008-04-04 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_branch_middle_of_instruction.il: Recent
+ work on prefixes broke the verification for branching
+ in the middle of an instruction.
+
+2008-04-02 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_prefix_test.sh: New test generator for
+ instruction prefix.
+
+ * make_test.sh: Added tests using the new generator.
+
+2008-04-02 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_type_constraint_test.sh: New test generator for
+ constraints on generic type arguments.
+
+ * make_testS: Added tests using the new generator.
+
+2008-03-31 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * AssemblyRunner.cs: Mark TypeLoadException as invalid code.
+
+2008-03-25 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_branch_to_first_prefix.il: Test branching to the first prefix
+ of an instruction.
+
+2008-03-24 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_cmmp_test.sh: Test generator for readonly pointers.
+
+ * make_test.sh: New tests using the added generator.
+
+2008-03-17 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_constrained_test.sh: Test generator for constrained calls.
+
+ * make_test.sh: New tests using the added generator.
+
+2008-03-12 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_generic_test.cs: Tests for generic classes.
+
+ * unverifiable_generic_type_field_access.il: Tests for
+ not mixing generic arguments.
+
+ * valid_generic_test.cs: Add tests for generic
+ class and method together.
+
+2008-03-12 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * strict_native_int_converts_to_unamanged_pointer.cs: Allow
+ conversion from native int to unmanaged pointer in non-strict mode.
+ This is required to allow the C# expression "(IntPtr)null" to be
+ verifiable.
+
+2008-03-12 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_ldftn_final_virtual_method.il:
+ * valid_ldftn_sealed_type_virtual_method.il: Tests the interaction
+ of sealed type and final method or ldftn verifiability.
+
+2008-03-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_delegate_compat_test.sh: Added. Generate tests for
+ compatibility between delegate signature and function
+ signature.
+
+ * make_tests.sh: Added tests using make_delegate_compat_test.sh.
+
+2008-03-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_invalid_ret_type.sh: Added. Generate return site tests
+ for invalid return types.
+
+ * make_tests.sh: Add tests using make_invalid_ret_type.sh.
+
+2008-03-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_callvirt_static_method.il: Added. Test for callvirt and
+ static methods.
+
+2008-02-28 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_refanytype_null_stack_top.il: New test for refanytype opcode.
+
+ * invalid_refanytype_invalid_stack_top.il: Same.
+
+ * valid_refanytype.il: Same.
+
+2008-02-28 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_mkrefany.il: New test generator for mkrefany opcode.
+
+ * make_tests.sh: Added tests for mkrefany.
+
+2008-02-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_vararg.il: New test for calling vararg methods.
+
+2008-02-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_refanyval.il: New test for the refanyval opcode.
+
+ * invalid_refanyval_null_stack_top.il: Same.
+
+ * invalid_refanyval_invalid_stack_top.il: Same.
+
+2008-02-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_arglist.il: New test for the arglist opcode.
+
+ * invalid_arglist_method_not_vararg.il: Same.
+
+2008-02-18 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_locals_without_initlocals.il: Methods with locals
+ that are not .init are allways unverifiable.
+
+2008-02-08 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_void_ptr_store_2.cs: Tests for using unmanaged pointers.
+ This test looks for void pointers.
+
+ * unverifiable_void_ptr_store_3.cs: Same.
+
+ * unverifiable_void_ptr_store.cs: Same.
+
+ * valid_merge_boxed_type_3.cs: Test merging a reference type diferent than
+ System.Object and a boxed valuetype. This is hopefully the last issue of
+ merging stack frames.
+
+ * Makefile: compile .cs files with /unsafe switch.
+
+2008-02-06 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_boxed_enum_is_compatible_with_system_enum.cs: Added.
+ Test if an enum is compatible with System.Enum.
+
+ * valid_merge_boxed_type.cs: Added. Test merging
+ a boxed int32 with a reference type.
+
+ * valid_merge_boxed_type_2.cs: Same.
+
+ * make_ldelem_test.sh: Added some enums to be used by the tests.
+
+ * make_tests.sh: New tests for ldelem compatibility between enums
+ and their base type. Marked some tests as strict.
+
+2008-02-06 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_merge_base_type.cs
+ * valid_merge_first_value_is_base_type.cs:
+ * valid_merge_interface_type_3.cs:
+ * valid_merge_interface_type_4.cs:
+ * valid_merge_interface_type.cs:
+ * valid_merge_second_value_is_base_type.cs: New tests for stack merging.
+ These tests verify the correctness of the merged value.
+
+2008-01-30 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: More tests for brtrue/brfalse with boxed values
+ and null literals.
+
+ * make_bool_branch_test.sh: New optional arg to allow for new tests.
+
+2008-01-30 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: Removed some invalid tests for nesting access
+ as they where trying to call non final virtual methods without using
+ the 'this' pointer.
+
+2008-01-23 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_call_test.sh: test generator for call and callvirt.
+
+ * make_tests.sh: added tests for call and callvirt.
+
+2008-01-21 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_ldstr_bad_token.il: added. check the index
+ against the the #US heap.
+
+2008-01-21 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_newobj_no_visibility.il: added. visibility
+ check for newobj.
+
+2008-01-21 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_ldftn_no_visibility.il: added. visibility
+ check for ldftn.
+
+ * unverifiable_ldvirtftn_no_visibility.il: added. visibility
+ check for ldvirtftn.
+
+2008-01-18 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: added tests for ovf math with floats.
+
+2008-01-17 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_localloc_test.sh: test generator for localloc.
+
+ * make_tests.sh: added tests for localloc.
+
+2008-01-17 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_sizeof_test.sh: test generator for sizeof.
+
+ * make_tests.sh: added tests for sizeof.
+
+2008-01-17 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_cp_test.sh: test generator for cpobj.
+
+ * make_tests.sh: added tests for cpobj.
+
+2008-01-17 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_initobj_invalid_token_out_of_bounds.il: tests for initobj.
+
+ * invalid_initobj_invalid_token_type.il: same.
+
+ * make_initobj_test.sh: test generator for initobj.
+
+ * make_tests.sh: added tests for initobj.
+
+2008-01-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * unverifiable_ldfld_reference_type_by_ref.il: new test for ldfld.
+
+ * invalid_stojb_bad_token.il: test for bad ldobj token.
+
+ * invalid_stojb_token_out_of_bounds.il: same.
+
+ * make_stobj_test.sh: new test generator.
+
+ * make_test.sh: added new tests for stobj.
+
+2008-01-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_ldftn_method_spec_token.il: new test
+ for loading function pointers for generic methods.
+
+2008-01-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for unbox.any.
+
+ * make_unbox_any_test.sh: new test generator.
+
+2008-01-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for add|sub|mul ovf;
+
+ * unverifiable_unbox_toke_is_reference_type.il: New test for regressions
+ found while validating vbnc.
+
+ * valid_stind_ref_with_boxed_value.il: same.
+ * valid_ldelema_enum_array.il: same.
+
+2008-01-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_isinst_with_boxed_valuetype.il: New test for regressions
+ found while validating vbnc.
+
+ * valid_ldfld_valuetype_by_ref.il: same.
+ * valid_ldfld_valuetype_by_value.il: same.
+ * valid_stelem_ref_boxed_value.il: same.
+ * valid_stloc_boxed_valuetype.il: same.
+ * valid_sub_class_of_generic_type_is_compatible.il: same.
+ * unverifiable_ldfld_valuetype_boxed.il: same.
+ * unverifiable_ldfld_reference_type_by_ref.il: same.
+
+ * make_test.sh: new tests for stfld and cgt.un.
+
+
+2008-01-08 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_delegate_test.sh: increased max stack for
+ ldvirtftn tests.
+
+ * make_tests.sh: added new tests for delegates
+ constructed with ldvirtftn.
+
+2008-01-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_delegate_test.sh: added.
+
+ * make_tests.sh: added new tests for delegates
+ constructed with ldftn.
+
+2008-01-03 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_ldvirtftn_invalid_token_type.il: added.
+
+ * make_ldvirtftn_test.sh: added.
+
+ * invalid_ldvirtftn_invalid_token_out_of_bounds.il: added.
+
+ * make_ldftn_test.sh: changed to allow more tests.
+
+ * make_tests.sh: added new tests for ldvirtftn and
+ a buch more for ldftn.
+
+2007-12-31 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_ldftn_invalid_token_out_of_bounds.il: added.
+
+ * invalid_ldftn_invalid_token_type.il: added.
+
+ * make_ldftn_test.sh: added.
+
+ * make_test.sh: new tests for ldftn.
+
+ * AssemblyRunner.cs: added BadImageFormatException
+ to the list of invalid code errors. Removed
+ some dead code and an useless message.
+
+
+2007-12-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_non_empty_stack_at_try_begin.il: added.
+
+ * valid_branch_to_first_intruction_of_try.il: added.
+
+
+2007-12-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_exception_overlap_test.sh: new test generator.
+
+ * make_tests.sh: new tests for exception clause restrictions
+ enumerated in P1 12.4.2.7.
+
+ * invalid_catch_block_starts_after_prefix.il: new test
+ for a catch block that starts in the middle of an instruction.
+
+2007-12-24 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_switch_test.sh: new test generator.
+
+ * make_exception_branch_test.sh: the filter
+ handler did not pop the exception argument.
+
+ * make_tests.sh: add tests for switch.
+
+2007-12-21 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_branch_test.sh: new test generator.
+
+ * make_exception_branch_test.sh: added
+ support to test generator to specify
+ the expected result.
+
+ * make_tests.sh: some results for
+ make_exception_branch_test.sh were
+ wrong, fixed that.
+
+ * make_tests.sh: added some tests
+ to beq and bge.
+
+ * make_tests.sh added tests for br.
+
+2007-12-20 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_exception_sequence.il: new test
+ for what blocks take an exception on
+ stack at the begin.
+
+2007-12-19 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_empty_catch_block.il
+ * invalid_empty_fault_block.il
+ * invalid_empty_filter_block.il
+ * invalid_empty_finally_block.il
+ * invalid_empty_handler_block.il
+ * invalid_empty_try_block.il
+ tests for empty protected blocks.
+
+ * invalid_exception_blocks_order.il:
+ test for the required ordering of exception
+ clauses.
+
+ * invalid_finally_block_overlap_try_block.il
+ * invalid_try_block_includes_catch_block.il
+ * invalid_try_block_inside_filter_block.il
+ tests for ill formed exception clauses.
+
+ * invalid_fallout_of_filter_block.il
+ * invalid_fallout_of_handler_block.il
+ * invalid_fallthru_into_filter_block.il
+ * invalid_fallthru_into_handler_block.il
+ * unverifiable_fallout_of_catch_block.il
+ * unverifiable_fallout_of_fault_block.il
+ * unverifiable_fallout_of_finally_block.il
+ * unverifiable_fallout_of_try_block.il
+ * unverifiable_fallthru_into_catch_block.il
+ * unverifiable_fallthru_into_fault_block.il
+ * unverifiable_fallthru_into_finally_block.il
+ * valid_end_try_block_with_throw.il:
+ tests for fallthru in and out of protected blocks.
+
+2007-12-18 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for filter
+
+ * make_filter_test.sh: new test generator
+
+2007-12-14 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for endfilter
+
+ * make_endfilter_test.sh: new test generator
+
+2007-12-14 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * Makefile: add support to check strict tests.
+
+ * AssemblyRunner.cs: start using peverify as part of the
+ process. Support for strict tests.
+
+2007-12-12 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * invalid_filter_ends_at_endfilter_1.il: tests if the
+ filter block is limited by the start of the associated
+ handler clause or it is limited by the ocurrence of
+ endfilter. These 3 tests show that even if the endfilter
+ instruction must be the last, it doesn't define the end
+ of the filter block.
+
+ * invalid_filter_ends_at_endfilter_2.il: same
+
+ * invalid_filter_ends_at_endfilter_3.il: same
+
+ * make_test.sh: added tests for endfinally / endfault
+ * make_endfinally_test.sh: new test generator
+
+2007-12-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for rethrow
+ * make_rethrow_test.sh: new test generator
+
+2007-12-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for throw
+ * make_throw_test.sh: new test generator
+
+2007-12-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for castclass and isinst
+ * make_cast_test.sh: new test generator
+
+2007-12-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for stelem.X
+ * make_stelem_test.sh: new test generator
+
+2007-12-06 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for ldelem
+
+2007-12-06 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: fixed compilation issues with some tests.
+
+2007-12-06 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for ldelem.X
+ * make_ldelem_test.sh: new test generator
+
+2007-12-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for ldelema
+ * make_ldelema_test.sh: new test generator
+
+2007-12-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_test.sh: added tests for ldlen
+ * make_ldlen_test.sh: new test generator
+
+2007-10-26 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_array_method.cs: test for invoking array methods.
+
+2007-10-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: tests for the return type of the invoked method.
+ tests for passing typedbyref as param.
+
+ * make_obj_store_test.sh: add new optional script parameter to tell
+ if class fields should be generated. This fix some bogus tests using
+ typedbyref.
+
+2007-10-09 Rodrigo Kumpera <rkumpera@novell.com>
+ * make_tests.sh: unbox_byref_like test was flawed, it was not testing
+ the proper unverifable condition.
+
+2007-10-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_unary_test.sh: fixed an invalid struct that has no fields,
+ this was not the subject of the tests.
+ * make_newobj_test.sh: added, generate tests for newobj.
+ * make_tests.sh: added the new tests for newobj and some corner
+ cases of local/arg load/store.
+
+
+2007-10-04 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_store_indirect_test.sh: added, generate tests for stind.X.
+ * make_tests.sh: added the new tests for ldind.X.
+
+2007-10-02 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_tests.sh: added the new tests for ops mixing Int32 and IntPtr, disabled
+ the overlapped tests for now
+ * make_unary_test.sh: disabled the overlapped tests for now
+ * make_field_store_test.sh: sames
+
+2007-09-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * make_load_indirect_test.sh: added, generate tests for ldind.X.
+ * make_tests.sh: added the new tests for ldind.X and new tests for stloc/starg using
+ native int and int32.
+
2007-09-25 Rodrigo Kumpera <rkumpera@novell.com>
* valid_load_addr.il: Tests for valid uses of ldarga and ldloca