diff options
Diffstat (limited to 'test/torture-s/pr35800.c.s')
-rw-r--r-- | test/torture-s/pr35800.c.s | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/test/torture-s/pr35800.c.s b/test/torture-s/pr35800.c.s new file mode 100644 index 000000000..5f93a6076 --- /dev/null +++ b/test/torture-s/pr35800.c.s @@ -0,0 +1,128 @@ + .text + .file "/b/build/slave/linux/build/src/buildbot/work/gcc/gcc/testsuite/gcc.c-torture/execute/pr35800.c" + .globl stab_xcoff_builtin_type + .type stab_xcoff_builtin_type,@function +stab_xcoff_builtin_type: # @stab_xcoff_builtin_type + .param i32 + .result i32 + .local i32 +# BB#0: # %entry + i32.const $1=, 0 + block BB0_4 + i32.const $push0=, -34 + i32.lt_u $push1=, $0, $pop0 + br_if $pop1, BB0_4 +# BB#1: # %if.end + i32.const $push2=, -2 + i32.sub $0=, $pop2, $0 + i32.const $1=, .str + block BB0_3 + i32.const $push3=, 32 + i32.gt_u $push4=, $0, $pop3 + br_if $pop4, BB0_3 +# BB#2: # %switch.lookup + i32.const $push7=, switch.table + i32.const $push5=, 2 + i32.shl $push6=, $0, $pop5 + i32.add $push8=, $pop7, $pop6 + i32.load $1=, 0($pop8) +BB0_3: # %sw.epilog + i32.load8_s $1=, 0($1) +BB0_4: # %cleanup + return $1 +func_end0: + .size stab_xcoff_builtin_type, func_end0-stab_xcoff_builtin_type + + .globl main + .type main,@function +main: # @main + .result i32 + .local i32, i32 +# BB#0: # %if.end8 + i32.const $1=, -4 + i32.const $0=, switch.table+8 +BB1_1: # %stab_xcoff_builtin_type.exit + # =>This Inner Loop Header: Depth=1 + block BB1_4 + loop BB1_3 + i32.load $push0=, 0($0) + i32.load8_u $push1=, 0($pop0) + i32.const $push2=, 105 + i32.ne $push3=, $pop1, $pop2 + br_if $pop3, BB1_4 +# BB#2: # %for.cond + # in Loop: Header=BB1_1 Depth=1 + i32.const $push4=, -1 + i32.add $1=, $1, $pop4 + i32.const $push5=, 4 + i32.add $0=, $0, $pop5 + i32.const $push6=, -34 + i32.ge_s $push7=, $1, $pop6 + br_if $pop7, BB1_1 +BB1_3: # %if.end21 + i32.const $push8=, 0 + return $pop8 +BB1_4: # %if.then16 + call abort + unreachable +func_end1: + .size main, func_end1-main + + .type .str,@object # @.str + .section .rodata.str1.1,"aMS",@progbits,1 +.str: + .asciz "int" + .size .str, 4 + + .type .str.2,@object # @.str.2 +.str.2: + .asciz "short" + .size .str.2, 6 + + .type .str.33,@object # @.str.33 +.str.33: + .asciz "integer*8" + .size .str.33, 10 + + .type switch.table,@object # @switch.table + .section .data.rel.ro,"aw",@progbits + .align 4 +switch.table: + .int32 .str.2 + .int32 .str.2 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .int32 .str.33 + .size switch.table, 132 + + + .ident "clang version 3.8.0 " + .section ".note.GNU-stack","",@progbits |