Changes in directory llvm/test/Regression/Transforms/InstCombine:
2006-09-11-EmptyStructCrash.ll added (r1.1) --- Log message: new testcase for PR905: http://llvm.org/PR905 --- Diffs of the changes: (+47 -0) 2006-09-11-EmptyStructCrash.ll | 47 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 47 insertions(+) Index: llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll diff -c /dev/null llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll:1.1 *** /dev/null Mon Sep 11 16:42:06 2006 --- llvm/test/Regression/Transforms/InstCombine/2006-09-11-EmptyStructCrash.ll Mon Sep 11 16:41:56 2006 *************** *** 0 **** --- 1,47 ---- + ; RUN: llvm-as < %s | opt -instcombine -disable-output + ; PR905 + + %RPYTHON_EXCEPTION = type { %RPYTHON_EXCEPTION_VTABLE* } + %RPYTHON_EXCEPTION_VTABLE = type { %RPYTHON_EXCEPTION_VTABLE*, int, int, %RPyOpaque_RuntimeTypeInfo*, %arraytype_Char*, %functiontype_12* } + %RPyOpaque_RuntimeTypeInfo = type opaque* + %arraytype_Char = type { int, [0 x sbyte] } + %fixarray_array1019 = type [1019 x sbyte*] + %functiontype_12 = type %RPYTHON_EXCEPTION* () + %functiontype_14 = type void (%structtype_pypy.rpython.memory.gc.MarkSweepGC*) + %structtype_AddressLinkedListChunk = type { %structtype_AddressLinkedListChunk*, int, %fixarray_array1019 } + %structtype_exceptions.Exception = type { %RPYTHON_EXCEPTION } + %structtype_gc_pool = type { } + %structtype_gc_pool_node = type { %structtype_header*, %structtype_gc_pool_node* } + %structtype_header = type { int, %structtype_header* } + %structtype_pypy.rpython.memory.gc.MarkSweepGC = type { %structtype_exceptions.Exception, int, int, bool, %structtype_gc_pool*, int, %structtype_header*, %structtype_header*, %structtype_gc_pool_node*, double, double } + + implementation ; Functions: + + fastcc void %pypy_MarkSweepGC.collect() { + block0: + %v1221 = load %structtype_AddressLinkedListChunk** null ; <%structtype_AddressLinkedListChunk*> [#uses=1] + %v1222 = setne %structtype_AddressLinkedListChunk* %v1221, null ; <bool> [#uses=1] + br bool %v1222, label %block79, label %block4 + + block4: ; preds = %block0 + ret void + + block22: ; preds = %block79 + ret void + + block67: ; preds = %block79 + %v1459 = load %structtype_gc_pool** null ; <%structtype_gc_pool*> [#uses=1] + %v1460 = cast %structtype_gc_pool* %v1459 to sbyte* ; <sbyte*> [#uses=1] + %tmp_873 = cast sbyte* %v1460 to int ; <int> [#uses=1] + %tmp_874 = sub int %tmp_873, 0 ; <int> [#uses=1] + %v1461 = cast int %tmp_874 to sbyte* ; <sbyte*> [#uses=1] + %v1462 = cast sbyte* %v1461 to %structtype_header* ; <%structtype_header*> [#uses=1] + %tmp_876 = getelementptr %structtype_header* %v1462, int 0, uint 0 ; <int*> [#uses=1] + store int 0, int* %tmp_876 + ret void + + block79: ; preds = %block0 + %v1291 = load %structtype_gc_pool** null ; <%structtype_gc_pool*> [#uses=1] + %v1292 = setne %structtype_gc_pool* %v1291, null ; <bool> [#uses=1] + br bool %v1292, label %block67, label %block22 + } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits