summaryrefslogtreecommitdiff
path: root/test/torture-s/pr35800.c.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/torture-s/pr35800.c.s')
-rw-r--r--test/torture-s/pr35800.c.s128
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