summaryrefslogtreecommitdiff
path: root/test/torture-s/pr49886.c.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/torture-s/pr49886.c.s')
-rw-r--r--test/torture-s/pr49886.c.s197
1 files changed, 197 insertions, 0 deletions
diff --git a/test/torture-s/pr49886.c.s b/test/torture-s/pr49886.c.s
new file mode 100644
index 000000000..d05ec251a
--- /dev/null
+++ b/test/torture-s/pr49886.c.s
@@ -0,0 +1,197 @@
+ .text
+ .file "/b/build/slave/linux/build/src/buildbot/work/gcc/gcc/testsuite/gcc.c-torture/execute/pr49886.c"
+ .globl never_ever
+ .type never_ever,@function
+never_ever: # @never_ever
+ .param i32, i32
+# BB#0: # %entry
+ call abort
+ unreachable
+func_end0:
+ .size never_ever, func_end0-never_ever
+
+ .globl main
+ .type main,@function
+main: # @main
+ .result i32
+ .local i32
+# BB#0: # %entry
+ i32.const $0=, 0
+ i32.const $push0=, 1
+ i32.store $discard=, cond($0), $pop0
+ return $0
+func_end1:
+ .size main, func_end1-main
+
+ .globl bar_1
+ .type bar_1,@function
+bar_1: # @bar_1
+ .param i32, i32
+# BB#0: # %entry
+ i32.load $push0=, 4($1)
+ i32.const $push1=, 1
+ i32.add $push2=, $pop0, $pop1
+ i32.store $discard=, 4($1), $pop2
+ call mark_cell, $1
+ return
+func_end2:
+ .size bar_1, func_end2-bar_1
+
+ .type mark_cell,@function
+mark_cell: # @mark_cell
+ .param i32
+ .local i32, i32, i32
+# BB#0: # %entry
+ block BB3_22
+ i32.const $push27=, 0
+ i32.eq $push28=, $0, $pop27
+ br_if $pop28, BB3_22
+# BB#1: # %entry
+ i32.const $push1=, 0
+ i32.load $push0=, cond($pop1)
+ i32.const $push29=, 0
+ i32.eq $push30=, $pop0, $pop29
+ br_if $pop30, BB3_22
+# BB#2: # %land.lhs.true
+ i32.const $1=, 4
+ i32.load $push2=, 8($0)
+ i32.ne $push3=, $pop2, $1
+ br_if $pop3, BB3_22
+# BB#3: # %land.lhs.true2
+ i32.load $0=, 0($0)
+ i32.const $push31=, 0
+ i32.eq $push32=, $0, $pop31
+ br_if $pop32, BB3_22
+# BB#4: # %land.lhs.true4
+ i32.const $2=, 2
+ i32.add $3=, $0, $2
+ block BB3_21
+ i32.load8_u $push4=, 0($3)
+ i32.and $push5=, $pop4, $1
+ i32.const $push33=, 0
+ i32.eq $push34=, $pop5, $pop33
+ br_if $pop34, BB3_21
+# BB#5: # %land.lhs.true17
+ block BB3_20
+ i32.load8_u $push6=, 0($3)
+ i32.and $push7=, $pop6, $2
+ i32.const $push35=, 0
+ i32.eq $push36=, $pop7, $pop35
+ br_if $pop36, BB3_20
+# BB#6: # %land.lhs.true33
+ i32.const $2=, 1
+ block BB3_19
+ i32.load8_u $push8=, 0($3)
+ i32.and $push9=, $pop8, $2
+ i32.const $push37=, 0
+ i32.eq $push38=, $pop9, $pop37
+ br_if $pop38, BB3_19
+# BB#7: # %land.lhs.true49
+ i32.add $0=, $0, $2
+ block BB3_18
+ i32.load8_u $push10=, 0($0)
+ i32.const $push11=, 7
+ i32.shr_u $push12=, $pop10, $pop11
+ i32.const $push39=, 0
+ i32.eq $push40=, $pop12, $pop39
+ br_if $pop40, BB3_18
+# BB#8: # %land.lhs.true65
+ block BB3_17
+ i32.load8_u $push13=, 0($0)
+ i32.const $push14=, 64
+ i32.and $push15=, $pop13, $pop14
+ i32.const $push41=, 0
+ i32.eq $push42=, $pop15, $pop41
+ br_if $pop42, BB3_17
+# BB#9: # %land.lhs.true81
+ block BB3_16
+ i32.load8_u $push16=, 0($0)
+ i32.const $push17=, 32
+ i32.and $push18=, $pop16, $pop17
+ i32.const $push43=, 0
+ i32.eq $push44=, $pop18, $pop43
+ br_if $pop44, BB3_16
+# BB#10: # %land.lhs.true97
+ block BB3_15
+ i32.load8_u $push19=, 0($0)
+ i32.const $push20=, 16
+ i32.and $push21=, $pop19, $pop20
+ i32.const $push45=, 0
+ i32.eq $push46=, $pop21, $pop45
+ br_if $pop46, BB3_15
+# BB#11: # %land.lhs.true113
+ block BB3_14
+ i32.load8_u $push22=, 0($0)
+ i32.const $push23=, 8
+ i32.and $push24=, $pop22, $pop23
+ i32.const $push47=, 0
+ i32.eq $push48=, $pop24, $pop47
+ br_if $pop48, BB3_14
+# BB#12: # %land.lhs.true129
+ i32.load8_u $push25=, 0($0)
+ i32.and $push26=, $pop25, $1
+ br_if $pop26, BB3_22
+# BB#13: # %if.then134
+ call never_ever, $0, $0
+ unreachable
+BB3_14: # %if.then118
+ call never_ever, $0, $0
+ unreachable
+BB3_15: # %if.then102
+ call never_ever, $0, $0
+ unreachable
+BB3_16: # %if.then86
+ call never_ever, $0, $0
+ unreachable
+BB3_17: # %if.then70
+ call never_ever, $0, $0
+ unreachable
+BB3_18: # %if.then54
+ call never_ever, $0, $0
+ unreachable
+BB3_19: # %if.then38
+ call never_ever, $0, $0
+ unreachable
+BB3_20: # %if.then22
+ call never_ever, $0, $0
+ unreachable
+BB3_21: # %if.then7
+ call never_ever, $0, $0
+ unreachable
+BB3_22: # %if.end137
+ return
+func_end3:
+ .size mark_cell, func_end3-mark_cell
+
+ .globl bar_2
+ .type bar_2,@function
+bar_2: # @bar_2
+ .param i32, i32
+# BB#0: # %entry
+ i32.load $push0=, 4($1)
+ i32.const $push1=, 2
+ i32.add $push2=, $pop0, $pop1
+ i32.store $discard=, 4($1), $pop2
+ call mark_cell, $1
+ return
+func_end4:
+ .size bar_2, func_end4-bar_2
+
+ .type cond,@object # @cond
+ .bss
+ .globl cond
+ .align 2
+cond:
+ .int32 0 # 0x0
+ .size cond, 4
+
+ .type gi,@object # @gi
+ .globl gi
+ .align 2
+gi:
+ .int32 0 # 0x0
+ .size gi, 4
+
+
+ .ident "clang version 3.8.0 "
+ .section ".note.GNU-stack","",@progbits