blob: f5741b940848e82b9977725402bdc594e1143467 [file] [edit]
.text
.file "/usr/local/google/home/jgravelle/code/wasm/waterfall/src/work/gcc/gcc/testsuite/gcc.c-torture/execute/builtin-bitops-1.c"
.section .text.my_ffs,"ax",@progbits
.hidden my_ffs
.globl my_ffs
.type my_ffs,@function
my_ffs: # @my_ffs
.param i32
.result i32
.local i32, i32, i32
# BB#0: # %entry
block
i32.eqz $push12=, $0
br_if 0, $pop12 # 0: down to label0
# BB#1: # %for.cond.preheader
i32.const $2=, 1
.LBB0_2: # %for.cond
# =>This Inner Loop Header: Depth=1
block
loop # label2:
copy_local $push9=, $2
tee_local $push8=, $3=, $pop9
i32.const $push7=, -1
i32.add $push6=, $pop8, $pop7
tee_local $push5=, $1=, $pop6
i32.const $push4=, 31
i32.gt_u $push0=, $pop5, $pop4
br_if 1, $pop0 # 1: down to label1
# BB#3: # %for.body
# in Loop: Header=BB0_2 Depth=1
i32.const $push11=, 1
i32.add $2=, $3, $pop11
i32.const $push10=, 1
i32.shl $push1=, $pop10, $1
i32.and $push2=, $pop1, $0
i32.eqz $push13=, $pop2
br_if 0, $pop13 # 0: up to label2
.LBB0_4: # %cleanup
end_loop
end_block # label1:
return $3
.LBB0_5:
end_block # label0:
i32.const $push3=, 0
# fallthrough-return: $pop3
.endfunc
.Lfunc_end0:
.size my_ffs, .Lfunc_end0-my_ffs
.section .text.my_ctz,"ax",@progbits
.hidden my_ctz
.globl my_ctz
.type my_ctz,@function
my_ctz: # @my_ctz
.param i32
.result i32
.local i32
# BB#0: # %entry
i32.const $1=, 0
.LBB1_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label4:
i32.const $push3=, 1
i32.shl $push0=, $pop3, $1
i32.and $push1=, $pop0, $0
br_if 1, $pop1 # 1: down to label3
# BB#2: # %for.inc
# in Loop: Header=BB1_1 Depth=1
i32.const $push7=, 1
i32.add $push6=, $1, $pop7
tee_local $push5=, $1=, $pop6
i32.const $push4=, 32
i32.lt_u $push2=, $pop5, $pop4
br_if 0, $pop2 # 0: up to label4
.LBB1_3: # %for.end
end_loop
end_block # label3:
copy_local $push8=, $1
# fallthrough-return: $pop8
.endfunc
.Lfunc_end1:
.size my_ctz, .Lfunc_end1-my_ctz
.section .text.my_clz,"ax",@progbits
.hidden my_clz
.globl my_clz
.type my_clz,@function
my_clz: # @my_clz
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $2=, 0
i32.const $1=, 31
.LBB2_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label6:
i32.const $push3=, 1
i32.shl $push0=, $pop3, $1
i32.and $push1=, $pop0, $0
br_if 1, $pop1 # 1: down to label5
# BB#2: # %for.inc
# in Loop: Header=BB2_1 Depth=1
i32.const $push8=, -1
i32.add $1=, $1, $pop8
i32.const $push7=, 1
i32.add $push6=, $2, $pop7
tee_local $push5=, $2=, $pop6
i32.const $push4=, 32
i32.lt_u $push2=, $pop5, $pop4
br_if 0, $pop2 # 0: up to label6
.LBB2_3: # %for.end
end_loop
end_block # label5:
copy_local $push9=, $2
# fallthrough-return: $pop9
.endfunc
.Lfunc_end2:
.size my_clz, .Lfunc_end2-my_clz
.section .text.my_clrsb,"ax",@progbits
.hidden my_clrsb
.globl my_clrsb
.type my_clrsb,@function
my_clrsb: # @my_clrsb
.param i32
.result i32
.local i32, i32, i32
# BB#0: # %entry
i32.const $push0=, 31
i32.shr_u $1=, $0, $pop0
i32.const $2=, 30
i32.const $3=, 1
.LBB3_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label8:
i32.shr_u $push1=, $0, $2
i32.const $push7=, 1
i32.and $push2=, $pop1, $pop7
i32.ne $push3=, $pop2, $1
br_if 1, $pop3 # 1: down to label7
# BB#2: # %for.inc
# in Loop: Header=BB3_1 Depth=1
i32.const $push12=, -1
i32.add $2=, $2, $pop12
i32.const $push11=, 1
i32.add $push10=, $3, $pop11
tee_local $push9=, $3=, $pop10
i32.const $push8=, 32
i32.lt_u $push4=, $pop9, $pop8
br_if 0, $pop4 # 0: up to label8
.LBB3_3: # %for.end
end_loop
end_block # label7:
i32.const $push5=, -1
i32.add $push6=, $3, $pop5
# fallthrough-return: $pop6
.endfunc
.Lfunc_end3:
.size my_clrsb, .Lfunc_end3-my_clrsb
.section .text.my_popcount,"ax",@progbits
.hidden my_popcount
.globl my_popcount
.type my_popcount,@function
my_popcount: # @my_popcount
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $1=, 0
i32.const $2=, 0
.LBB4_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label9:
i32.const $push9=, 1
i32.shl $push0=, $pop9, $2
i32.and $push1=, $pop0, $0
i32.const $push8=, 0
i32.ne $push2=, $pop1, $pop8
i32.add $1=, $pop2, $1
i32.const $push7=, 1
i32.add $push6=, $2, $pop7
tee_local $push5=, $2=, $pop6
i32.const $push4=, 32
i32.ne $push3=, $pop5, $pop4
br_if 0, $pop3 # 0: up to label9
# BB#2: # %for.end
end_loop
copy_local $push10=, $1
# fallthrough-return: $pop10
.endfunc
.Lfunc_end4:
.size my_popcount, .Lfunc_end4-my_popcount
.section .text.my_parity,"ax",@progbits
.hidden my_parity
.globl my_parity
.type my_parity,@function
my_parity: # @my_parity
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $1=, 0
i32.const $2=, 0
.LBB5_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label10:
i32.const $push11=, 1
i32.shl $push0=, $pop11, $2
i32.and $push1=, $pop0, $0
i32.const $push10=, 0
i32.ne $push2=, $pop1, $pop10
i32.add $1=, $pop2, $1
i32.const $push9=, 1
i32.add $push8=, $2, $pop9
tee_local $push7=, $2=, $pop8
i32.const $push6=, 32
i32.ne $push3=, $pop7, $pop6
br_if 0, $pop3 # 0: up to label10
# BB#2: # %for.end
end_loop
i32.const $push4=, 1
i32.and $push5=, $1, $pop4
# fallthrough-return: $pop5
.endfunc
.Lfunc_end5:
.size my_parity, .Lfunc_end5-my_parity
.section .text.my_ffsl,"ax",@progbits
.hidden my_ffsl
.globl my_ffsl
.type my_ffsl,@function
my_ffsl: # @my_ffsl
.param i32
.result i32
.local i32, i32, i32
# BB#0: # %entry
block
i32.eqz $push12=, $0
br_if 0, $pop12 # 0: down to label11
# BB#1: # %for.cond.preheader
i32.const $2=, 1
.LBB6_2: # %for.cond
# =>This Inner Loop Header: Depth=1
block
loop # label13:
copy_local $push9=, $2
tee_local $push8=, $3=, $pop9
i32.const $push7=, -1
i32.add $push6=, $pop8, $pop7
tee_local $push5=, $1=, $pop6
i32.const $push4=, 31
i32.gt_u $push0=, $pop5, $pop4
br_if 1, $pop0 # 1: down to label12
# BB#3: # %for.body
# in Loop: Header=BB6_2 Depth=1
i32.const $push11=, 1
i32.add $2=, $3, $pop11
i32.const $push10=, 1
i32.shl $push1=, $pop10, $1
i32.and $push2=, $pop1, $0
i32.eqz $push13=, $pop2
br_if 0, $pop13 # 0: up to label13
.LBB6_4: # %cleanup
end_loop
end_block # label12:
return $3
.LBB6_5:
end_block # label11:
i32.const $push3=, 0
# fallthrough-return: $pop3
.endfunc
.Lfunc_end6:
.size my_ffsl, .Lfunc_end6-my_ffsl
.section .text.my_ctzl,"ax",@progbits
.hidden my_ctzl
.globl my_ctzl
.type my_ctzl,@function
my_ctzl: # @my_ctzl
.param i32
.result i32
.local i32
# BB#0: # %entry
i32.const $1=, 0
.LBB7_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label15:
i32.const $push3=, 1
i32.shl $push0=, $pop3, $1
i32.and $push1=, $pop0, $0
br_if 1, $pop1 # 1: down to label14
# BB#2: # %for.inc
# in Loop: Header=BB7_1 Depth=1
i32.const $push7=, 1
i32.add $push6=, $1, $pop7
tee_local $push5=, $1=, $pop6
i32.const $push4=, 32
i32.lt_u $push2=, $pop5, $pop4
br_if 0, $pop2 # 0: up to label15
.LBB7_3: # %for.end
end_loop
end_block # label14:
copy_local $push8=, $1
# fallthrough-return: $pop8
.endfunc
.Lfunc_end7:
.size my_ctzl, .Lfunc_end7-my_ctzl
.section .text.my_clzl,"ax",@progbits
.hidden my_clzl
.globl my_clzl
.type my_clzl,@function
my_clzl: # @my_clzl
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $2=, 0
i32.const $1=, 31
.LBB8_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label17:
i32.const $push3=, 1
i32.shl $push0=, $pop3, $1
i32.and $push1=, $pop0, $0
br_if 1, $pop1 # 1: down to label16
# BB#2: # %for.inc
# in Loop: Header=BB8_1 Depth=1
i32.const $push8=, -1
i32.add $1=, $1, $pop8
i32.const $push7=, 1
i32.add $push6=, $2, $pop7
tee_local $push5=, $2=, $pop6
i32.const $push4=, 32
i32.lt_u $push2=, $pop5, $pop4
br_if 0, $pop2 # 0: up to label17
.LBB8_3: # %for.end
end_loop
end_block # label16:
copy_local $push9=, $2
# fallthrough-return: $pop9
.endfunc
.Lfunc_end8:
.size my_clzl, .Lfunc_end8-my_clzl
.section .text.my_clrsbl,"ax",@progbits
.hidden my_clrsbl
.globl my_clrsbl
.type my_clrsbl,@function
my_clrsbl: # @my_clrsbl
.param i32
.result i32
.local i32, i32, i32
# BB#0: # %entry
i32.const $push0=, 31
i32.shr_u $1=, $0, $pop0
i32.const $2=, 30
i32.const $3=, 1
.LBB9_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label19:
i32.shr_u $push1=, $0, $2
i32.const $push7=, 1
i32.and $push2=, $pop1, $pop7
i32.ne $push3=, $pop2, $1
br_if 1, $pop3 # 1: down to label18
# BB#2: # %for.inc
# in Loop: Header=BB9_1 Depth=1
i32.const $push12=, -1
i32.add $2=, $2, $pop12
i32.const $push11=, 1
i32.add $push10=, $3, $pop11
tee_local $push9=, $3=, $pop10
i32.const $push8=, 32
i32.lt_u $push4=, $pop9, $pop8
br_if 0, $pop4 # 0: up to label19
.LBB9_3: # %for.end
end_loop
end_block # label18:
i32.const $push5=, -1
i32.add $push6=, $3, $pop5
# fallthrough-return: $pop6
.endfunc
.Lfunc_end9:
.size my_clrsbl, .Lfunc_end9-my_clrsbl
.section .text.my_popcountl,"ax",@progbits
.hidden my_popcountl
.globl my_popcountl
.type my_popcountl,@function
my_popcountl: # @my_popcountl
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $1=, 0
i32.const $2=, 0
.LBB10_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label20:
i32.const $push9=, 1
i32.shl $push0=, $pop9, $2
i32.and $push1=, $pop0, $0
i32.const $push8=, 0
i32.ne $push2=, $pop1, $pop8
i32.add $1=, $pop2, $1
i32.const $push7=, 1
i32.add $push6=, $2, $pop7
tee_local $push5=, $2=, $pop6
i32.const $push4=, 32
i32.ne $push3=, $pop5, $pop4
br_if 0, $pop3 # 0: up to label20
# BB#2: # %for.end
end_loop
copy_local $push10=, $1
# fallthrough-return: $pop10
.endfunc
.Lfunc_end10:
.size my_popcountl, .Lfunc_end10-my_popcountl
.section .text.my_parityl,"ax",@progbits
.hidden my_parityl
.globl my_parityl
.type my_parityl,@function
my_parityl: # @my_parityl
.param i32
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $1=, 0
i32.const $2=, 0
.LBB11_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label21:
i32.const $push11=, 1
i32.shl $push0=, $pop11, $2
i32.and $push1=, $pop0, $0
i32.const $push10=, 0
i32.ne $push2=, $pop1, $pop10
i32.add $1=, $pop2, $1
i32.const $push9=, 1
i32.add $push8=, $2, $pop9
tee_local $push7=, $2=, $pop8
i32.const $push6=, 32
i32.ne $push3=, $pop7, $pop6
br_if 0, $pop3 # 0: up to label21
# BB#2: # %for.end
end_loop
i32.const $push4=, 1
i32.and $push5=, $1, $pop4
# fallthrough-return: $pop5
.endfunc
.Lfunc_end11:
.size my_parityl, .Lfunc_end11-my_parityl
.section .text.my_ffsll,"ax",@progbits
.hidden my_ffsll
.globl my_ffsll
.type my_ffsll,@function
my_ffsll: # @my_ffsll
.param i64
.result i32
.local i64, i32, i64, i32
# BB#0: # %entry
block
i64.eqz $push1=, $0
br_if 0, $pop1 # 0: down to label22
# BB#1: # %for.cond.preheader
i64.const $3=, 0
i32.const $2=, 1
.LBB12_2: # %for.cond
# =>This Inner Loop Header: Depth=1
block
loop # label24:
copy_local $4=, $2
i64.const $push6=, 63
i64.gt_u $push2=, $3, $pop6
br_if 1, $pop2 # 1: down to label23
# BB#3: # %for.body
# in Loop: Header=BB12_2 Depth=1
i32.const $push9=, 1
i32.add $2=, $4, $pop9
i64.const $push8=, 1
i64.shl $1=, $pop8, $3
i64.const $push7=, 1
i64.add $push0=, $3, $pop7
copy_local $3=, $pop0
i64.and $push3=, $1, $0
i64.eqz $push4=, $pop3
br_if 0, $pop4 # 0: up to label24
.LBB12_4: # %cleanup
end_loop
end_block # label23:
return $4
.LBB12_5:
end_block # label22:
i32.const $push5=, 0
# fallthrough-return: $pop5
.endfunc
.Lfunc_end12:
.size my_ffsll, .Lfunc_end12-my_ffsll
.section .text.my_ctzll,"ax",@progbits
.hidden my_ctzll
.globl my_ctzll
.type my_ctzll,@function
my_ctzll: # @my_ctzll
.param i64
.result i32
.local i64, i32
# BB#0: # %entry
i32.const $2=, 0
i64.const $1=, 0
.LBB13_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label26:
i64.const $push5=, 1
i64.shl $push0=, $pop5, $1
i64.and $push1=, $pop0, $0
i64.const $push4=, 0
i64.ne $push2=, $pop1, $pop4
br_if 1, $pop2 # 1: down to label25
# BB#2: # %for.inc
# in Loop: Header=BB13_1 Depth=1
i32.const $push10=, 1
i32.add $2=, $2, $pop10
i64.const $push9=, 1
i64.add $push8=, $1, $pop9
tee_local $push7=, $1=, $pop8
i64.const $push6=, 64
i64.lt_u $push3=, $pop7, $pop6
br_if 0, $pop3 # 0: up to label26
.LBB13_3: # %for.end
end_loop
end_block # label25:
copy_local $push11=, $2
# fallthrough-return: $pop11
.endfunc
.Lfunc_end13:
.size my_ctzll, .Lfunc_end13-my_ctzll
.section .text.my_clzll,"ax",@progbits
.hidden my_clzll
.globl my_clzll
.type my_clzll,@function
my_clzll: # @my_clzll
.param i64
.result i32
.local i64, i64, i32
# BB#0: # %entry
i32.const $3=, 0
i64.const $1=, 63
i64.const $2=, 0
.LBB14_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label28:
i64.const $push5=, 1
i64.shl $push0=, $pop5, $1
i64.and $push1=, $pop0, $0
i64.const $push4=, 0
i64.ne $push2=, $pop1, $pop4
br_if 1, $pop2 # 1: down to label27
# BB#2: # %for.inc
# in Loop: Header=BB14_1 Depth=1
i64.const $push11=, -1
i64.add $1=, $1, $pop11
i32.const $push10=, 1
i32.add $3=, $3, $pop10
i64.const $push9=, 1
i64.add $push8=, $2, $pop9
tee_local $push7=, $2=, $pop8
i64.const $push6=, 64
i64.lt_u $push3=, $pop7, $pop6
br_if 0, $pop3 # 0: up to label28
.LBB14_3: # %for.end
end_loop
end_block # label27:
copy_local $push12=, $3
# fallthrough-return: $pop12
.endfunc
.Lfunc_end14:
.size my_clzll, .Lfunc_end14-my_clzll
.section .text.my_clrsbll,"ax",@progbits
.hidden my_clrsbll
.globl my_clrsbll
.type my_clrsbll,@function
my_clrsbll: # @my_clrsbll
.param i64
.result i32
.local i64, i64, i64, i32
# BB#0: # %entry
i64.const $push0=, 63
i64.shr_u $1=, $0, $pop0
i64.const $2=, 62
i64.const $3=, 1
i32.const $4=, 1
.LBB15_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label30:
i64.shr_u $push1=, $0, $2
i64.const $push7=, 1
i64.and $push2=, $pop1, $pop7
i64.ne $push3=, $pop2, $1
br_if 1, $pop3 # 1: down to label29
# BB#2: # %for.inc
# in Loop: Header=BB15_1 Depth=1
i64.const $push13=, -1
i64.add $2=, $2, $pop13
i32.const $push12=, 1
i32.add $4=, $4, $pop12
i64.const $push11=, 1
i64.add $push10=, $3, $pop11
tee_local $push9=, $3=, $pop10
i64.const $push8=, 64
i64.lt_u $push4=, $pop9, $pop8
br_if 0, $pop4 # 0: up to label30
.LBB15_3: # %for.end
end_loop
end_block # label29:
i32.const $push5=, -1
i32.add $push6=, $4, $pop5
# fallthrough-return: $pop6
.endfunc
.Lfunc_end15:
.size my_clrsbll, .Lfunc_end15-my_clrsbll
.section .text.my_popcountll,"ax",@progbits
.hidden my_popcountll
.globl my_popcountll
.type my_popcountll,@function
my_popcountll: # @my_popcountll
.param i64
.result i32
.local i64, i32
# BB#0: # %entry
i32.const $2=, 0
i64.const $1=, 0
.LBB16_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label31:
i64.const $push9=, 1
i64.shl $push0=, $pop9, $1
i64.and $push1=, $pop0, $0
i64.const $push8=, 0
i64.ne $push2=, $pop1, $pop8
i32.add $2=, $pop2, $2
i64.const $push7=, 1
i64.add $push6=, $1, $pop7
tee_local $push5=, $1=, $pop6
i64.const $push4=, 64
i64.ne $push3=, $pop5, $pop4
br_if 0, $pop3 # 0: up to label31
# BB#2: # %for.end
end_loop
copy_local $push10=, $2
# fallthrough-return: $pop10
.endfunc
.Lfunc_end16:
.size my_popcountll, .Lfunc_end16-my_popcountll
.section .text.my_parityll,"ax",@progbits
.hidden my_parityll
.globl my_parityll
.type my_parityll,@function
my_parityll: # @my_parityll
.param i64
.result i32
.local i64, i32
# BB#0: # %entry
i32.const $2=, 0
i64.const $1=, 0
.LBB17_1: # %for.body
# =>This Inner Loop Header: Depth=1
loop # label32:
i64.const $push11=, 1
i64.shl $push0=, $pop11, $1
i64.and $push1=, $pop0, $0
i64.const $push10=, 0
i64.ne $push2=, $pop1, $pop10
i32.add $2=, $pop2, $2
i64.const $push9=, 1
i64.add $push8=, $1, $pop9
tee_local $push7=, $1=, $pop8
i64.const $push6=, 64
i64.ne $push3=, $pop7, $pop6
br_if 0, $pop3 # 0: up to label32
# BB#2: # %for.end
end_loop
i32.const $push4=, 1
i32.and $push5=, $2, $pop4
# fallthrough-return: $pop5
.endfunc
.Lfunc_end17:
.size my_parityll, .Lfunc_end17-my_parityll
.section .text.main,"ax",@progbits
.hidden main
.globl main
.type main,@function
main: # @main
.result i32
.local i32, i32, i32, i32, i64, i32, i32, i64, i64, i64, i32
# BB#0: # %entry
i32.const $0=, 0
.LBB18_1: # %for.body
# =>This Loop Header: Depth=1
# Child Loop BB18_3 Depth 2
# Child Loop BB18_9 Depth 2
# Child Loop BB18_13 Depth 2
# Child Loop BB18_17 Depth 2
# Child Loop BB18_21 Depth 2
# Child Loop BB18_24 Depth 2
block
block
loop # label35:
i32.const $push208=, 2
i32.shl $push1=, $0, $pop208
i32.const $push207=, ints
i32.add $push206=, $pop1, $pop207
tee_local $push205=, $1=, $pop206
i32.load $push204=, 0($pop205)
tee_local $push203=, $10=, $pop204
i32.ctz $push202=, $pop203
tee_local $push201=, $2=, $pop202
i32.const $push200=, 1
i32.add $push2=, $pop201, $pop200
i32.const $push199=, 0
i32.select $6=, $pop2, $pop199, $10
i32.const $3=, 0
block
i32.eqz $push400=, $10
br_if 0, $pop400 # 0: down to label36
# BB#2: # %for.cond.i.preheader
# in Loop: Header=BB18_1 Depth=1
i32.const $5=, 0
.LBB18_3: # %for.cond.i
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label38:
copy_local $push211=, $5
tee_local $push210=, $3=, $pop211
i32.const $push209=, 31
i32.gt_u $push3=, $pop210, $pop209
br_if 1, $pop3 # 1: down to label37
# BB#4: # %for.body.i
# in Loop: Header=BB18_3 Depth=2
i32.const $push213=, 1
i32.add $5=, $3, $pop213
i32.const $push212=, 1
i32.shl $push4=, $pop212, $3
i32.and $push5=, $pop4, $10
i32.eqz $push401=, $pop5
br_if 0, $pop401 # 0: up to label38
.LBB18_5: # %my_ffs.exit.loopexit
# in Loop: Header=BB18_1 Depth=1
end_loop
end_block # label37:
i32.const $push214=, 1
i32.add $3=, $3, $pop214
.LBB18_6: # %my_ffs.exit
# in Loop: Header=BB18_1 Depth=1
end_block # label36:
i32.ne $push6=, $6, $3
br_if 1, $pop6 # 1: down to label34
# BB#7: # %if.end
# in Loop: Header=BB18_1 Depth=1
block
i32.eqz $push402=, $10
br_if 0, $pop402 # 0: down to label39
# BB#8: # %land.lhs.true
# in Loop: Header=BB18_1 Depth=1
i32.clz $6=, $10
i32.const $5=, 0
i32.const $3=, 31
.LBB18_9: # %for.body.i816
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label41:
i32.const $push215=, 1
i32.shl $push7=, $pop215, $3
i32.and $push8=, $pop7, $10
br_if 1, $pop8 # 1: down to label40
# BB#10: # %for.inc.i819
# in Loop: Header=BB18_9 Depth=2
i32.const $push220=, -1
i32.add $3=, $3, $pop220
i32.const $push219=, 1
i32.add $push218=, $5, $pop219
tee_local $push217=, $5=, $pop218
i32.const $push216=, 32
i32.lt_u $push9=, $pop217, $pop216
br_if 0, $pop9 # 0: up to label41
.LBB18_11: # %my_clz.exit
# in Loop: Header=BB18_1 Depth=1
end_loop
end_block # label40:
i32.ne $push10=, $6, $5
br_if 2, $pop10 # 2: down to label34
# BB#12: # %land.lhs.true13
# in Loop: Header=BB18_1 Depth=1
i32.const $3=, 0
.LBB18_13: # %for.body.i875
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label43:
i32.const $push221=, 1
i32.shl $push11=, $pop221, $3
i32.and $push12=, $pop11, $10
br_if 1, $pop12 # 1: down to label42
# BB#14: # %for.inc.i878
# in Loop: Header=BB18_13 Depth=2
i32.const $push225=, 1
i32.add $push224=, $3, $pop225
tee_local $push223=, $3=, $pop224
i32.const $push222=, 32
i32.lt_u $push13=, $pop223, $pop222
br_if 0, $pop13 # 0: up to label43
.LBB18_15: # %my_ctz.exit
# in Loop: Header=BB18_1 Depth=1
end_loop
end_block # label42:
i32.ne $push14=, $2, $3
br_if 2, $pop14 # 2: down to label34
.LBB18_16: # %if.end19
# in Loop: Header=BB18_1 Depth=1
end_block # label39:
i32.call $2=, __builtin_clrsb@FUNCTION, $10
i32.load $push228=, 0($1)
tee_local $push227=, $3=, $pop228
i32.const $push226=, 31
i32.shr_u $6=, $pop227, $pop226
i32.const $5=, 1
i32.const $10=, 30
.LBB18_17: # %for.body.i948
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label45:
i32.shr_u $push15=, $3, $10
i32.const $push229=, 1
i32.and $push16=, $pop15, $pop229
i32.ne $push17=, $pop16, $6
br_if 1, $pop17 # 1: down to label44
# BB#18: # %for.inc.i951
# in Loop: Header=BB18_17 Depth=2
i32.const $push234=, -1
i32.add $10=, $10, $pop234
i32.const $push233=, 1
i32.add $push232=, $5, $pop233
tee_local $push231=, $5=, $pop232
i32.const $push230=, 32
i32.lt_u $push18=, $pop231, $pop230
br_if 0, $pop18 # 0: up to label45
.LBB18_19: # %my_clrsb.exit
# in Loop: Header=BB18_1 Depth=1
end_loop
end_block # label44:
i32.const $push235=, -1
i32.add $push19=, $5, $pop235
i32.ne $push20=, $2, $pop19
br_if 1, $pop20 # 1: down to label34
# BB#20: # %for.body.i1030.preheader
# in Loop: Header=BB18_1 Depth=1
i32.const $5=, 0
i32.const $10=, 0
.LBB18_21: # %for.body.i1030
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
loop # label46:
i32.const $push241=, 1
i32.shl $push21=, $pop241, $10
i32.and $push22=, $pop21, $3
i32.const $push240=, 0
i32.ne $push23=, $pop22, $pop240
i32.add $5=, $pop23, $5
i32.const $push239=, 1
i32.add $push238=, $10, $pop239
tee_local $push237=, $10=, $pop238
i32.const $push236=, 32
i32.ne $push24=, $pop237, $pop236
br_if 0, $pop24 # 0: up to label46
# BB#22: # %my_popcount.exit
# in Loop: Header=BB18_1 Depth=1
end_loop
i32.popcnt $push25=, $3
i32.ne $push26=, $pop25, $5
br_if 1, $pop26 # 1: down to label34
# BB#23: # %for.body.i1109.preheader
# in Loop: Header=BB18_1 Depth=1
i32.const $6=, 0
i32.const $10=, 0
.LBB18_24: # %for.body.i1109
# Parent Loop BB18_1 Depth=1
# => This Inner Loop Header: Depth=2
loop # label47:
i32.const $push247=, 1
i32.shl $push27=, $pop247, $10
i32.and $push28=, $pop27, $3
i32.const $push246=, 0
i32.ne $push29=, $pop28, $pop246
i32.add $6=, $pop29, $6
i32.const $push245=, 1
i32.add $push244=, $10, $pop245
tee_local $push243=, $10=, $pop244
i32.const $push242=, 32
i32.ne $push30=, $pop243, $pop242
br_if 0, $pop30 # 0: up to label47
# BB#25: # %my_parity.exit
# in Loop: Header=BB18_1 Depth=1
end_loop
i32.xor $push31=, $6, $5
i32.const $push248=, 1
i32.and $push32=, $pop31, $pop248
br_if 1, $pop32 # 1: down to label34
# BB#26: # %for.cond
# in Loop: Header=BB18_1 Depth=1
i32.const $push252=, 1
i32.add $push251=, $0, $pop252
tee_local $push250=, $0=, $pop251
i32.const $push249=, 13
i32.lt_u $push33=, $pop250, $pop249
br_if 0, $pop33 # 0: up to label35
# BB#27: # %for.body41.preheader
end_loop
i32.const $0=, 0
.LBB18_28: # %for.body41
# =>This Loop Header: Depth=1
# Child Loop BB18_30 Depth 2
# Child Loop BB18_36 Depth 2
# Child Loop BB18_40 Depth 2
# Child Loop BB18_44 Depth 2
# Child Loop BB18_48 Depth 2
# Child Loop BB18_51 Depth 2
loop # label48:
i32.const $push262=, 2
i32.shl $push34=, $0, $pop262
i32.const $push261=, longs
i32.add $push260=, $pop34, $pop261
tee_local $push259=, $1=, $pop260
i32.load $push258=, 0($pop259)
tee_local $push257=, $10=, $pop258
i32.ctz $push256=, $pop257
tee_local $push255=, $2=, $pop256
i32.const $push254=, 1
i32.add $push35=, $pop255, $pop254
i32.const $push253=, 0
i32.select $6=, $pop35, $pop253, $10
i32.const $3=, 0
block
i32.eqz $push403=, $10
br_if 0, $pop403 # 0: down to label49
# BB#29: # %for.cond.i1185.preheader
# in Loop: Header=BB18_28 Depth=1
i32.const $5=, 0
.LBB18_30: # %for.cond.i1185
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label51:
copy_local $push265=, $5
tee_local $push264=, $3=, $pop265
i32.const $push263=, 31
i32.gt_u $push36=, $pop264, $pop263
br_if 1, $pop36 # 1: down to label50
# BB#31: # %for.body.i1189
# in Loop: Header=BB18_30 Depth=2
i32.const $push267=, 1
i32.add $5=, $3, $pop267
i32.const $push266=, 1
i32.shl $push37=, $pop266, $3
i32.and $push38=, $pop37, $10
i32.eqz $push404=, $pop38
br_if 0, $pop404 # 0: up to label51
.LBB18_32: # %my_ffsl.exit.loopexit
# in Loop: Header=BB18_28 Depth=1
end_loop
end_block # label50:
i32.const $push268=, 1
i32.add $3=, $3, $pop268
.LBB18_33: # %my_ffsl.exit
# in Loop: Header=BB18_28 Depth=1
end_block # label49:
i32.ne $push39=, $6, $3
br_if 1, $pop39 # 1: down to label34
# BB#34: # %if.end49
# in Loop: Header=BB18_28 Depth=1
block
i32.eqz $push405=, $10
br_if 0, $pop405 # 0: down to label52
# BB#35: # %land.lhs.true52
# in Loop: Header=BB18_28 Depth=1
i32.clz $6=, $10
i32.const $5=, 0
i32.const $3=, 31
.LBB18_36: # %for.body.i1266
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label54:
i32.const $push269=, 1
i32.shl $push40=, $pop269, $3
i32.and $push41=, $pop40, $10
br_if 1, $pop41 # 1: down to label53
# BB#37: # %for.inc.i1269
# in Loop: Header=BB18_36 Depth=2
i32.const $push274=, -1
i32.add $3=, $3, $pop274
i32.const $push273=, 1
i32.add $push272=, $5, $pop273
tee_local $push271=, $5=, $pop272
i32.const $push270=, 32
i32.lt_u $push42=, $pop271, $pop270
br_if 0, $pop42 # 0: up to label54
.LBB18_38: # %my_clzl.exit
# in Loop: Header=BB18_28 Depth=1
end_loop
end_block # label53:
i32.ne $push43=, $6, $5
br_if 2, $pop43 # 2: down to label34
# BB#39: # %land.lhs.true61
# in Loop: Header=BB18_28 Depth=1
i32.const $3=, 0
.LBB18_40: # %for.body.i1345
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label56:
i32.const $push275=, 1
i32.shl $push44=, $pop275, $3
i32.and $push45=, $pop44, $10
br_if 1, $pop45 # 1: down to label55
# BB#41: # %for.inc.i1348
# in Loop: Header=BB18_40 Depth=2
i32.const $push279=, 1
i32.add $push278=, $3, $pop279
tee_local $push277=, $3=, $pop278
i32.const $push276=, 32
i32.lt_u $push46=, $pop277, $pop276
br_if 0, $pop46 # 0: up to label56
.LBB18_42: # %my_ctzl.exit
# in Loop: Header=BB18_28 Depth=1
end_loop
end_block # label55:
i32.ne $push47=, $2, $3
br_if 2, $pop47 # 2: down to label34
.LBB18_43: # %if.end67
# in Loop: Header=BB18_28 Depth=1
end_block # label52:
i32.call $2=, __builtin_clrsbl@FUNCTION, $10
i32.load $push282=, 0($1)
tee_local $push281=, $3=, $pop282
i32.const $push280=, 31
i32.shr_u $6=, $pop281, $pop280
i32.const $5=, 1
i32.const $10=, 30
.LBB18_44: # %for.body.i1426
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label58:
i32.shr_u $push48=, $3, $10
i32.const $push283=, 1
i32.and $push49=, $pop48, $pop283
i32.ne $push50=, $pop49, $6
br_if 1, $pop50 # 1: down to label57
# BB#45: # %for.inc.i1429
# in Loop: Header=BB18_44 Depth=2
i32.const $push288=, -1
i32.add $10=, $10, $pop288
i32.const $push287=, 1
i32.add $push286=, $5, $pop287
tee_local $push285=, $5=, $pop286
i32.const $push284=, 32
i32.lt_u $push51=, $pop285, $pop284
br_if 0, $pop51 # 0: up to label58
.LBB18_46: # %my_clrsbl.exit
# in Loop: Header=BB18_28 Depth=1
end_loop
end_block # label57:
i32.const $push289=, -1
i32.add $push52=, $5, $pop289
i32.ne $push53=, $2, $pop52
br_if 1, $pop53 # 1: down to label34
# BB#47: # %for.body.i1511.preheader
# in Loop: Header=BB18_28 Depth=1
i32.const $5=, 0
i32.const $10=, 0
.LBB18_48: # %for.body.i1511
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
loop # label59:
i32.const $push295=, 1
i32.shl $push54=, $pop295, $10
i32.and $push55=, $pop54, $3
i32.const $push294=, 0
i32.ne $push56=, $pop55, $pop294
i32.add $5=, $pop56, $5
i32.const $push293=, 1
i32.add $push292=, $10, $pop293
tee_local $push291=, $10=, $pop292
i32.const $push290=, 32
i32.ne $push57=, $pop291, $pop290
br_if 0, $pop57 # 0: up to label59
# BB#49: # %my_popcountl.exit
# in Loop: Header=BB18_28 Depth=1
end_loop
i32.popcnt $push58=, $3
i32.ne $push59=, $pop58, $5
br_if 1, $pop59 # 1: down to label34
# BB#50: # %for.body.i1591.preheader
# in Loop: Header=BB18_28 Depth=1
i32.const $6=, 0
i32.const $10=, 0
.LBB18_51: # %for.body.i1591
# Parent Loop BB18_28 Depth=1
# => This Inner Loop Header: Depth=2
loop # label60:
i32.const $push301=, 1
i32.shl $push60=, $pop301, $10
i32.and $push61=, $pop60, $3
i32.const $push300=, 0
i32.ne $push62=, $pop61, $pop300
i32.add $6=, $pop62, $6
i32.const $push299=, 1
i32.add $push298=, $10, $pop299
tee_local $push297=, $10=, $pop298
i32.const $push296=, 32
i32.ne $push63=, $pop297, $pop296
br_if 0, $pop63 # 0: up to label60
# BB#52: # %my_parityl.exit
# in Loop: Header=BB18_28 Depth=1
end_loop
i32.xor $push64=, $6, $5
i32.const $push302=, 1
i32.and $push65=, $pop64, $pop302
br_if 1, $pop65 # 1: down to label34
# BB#53: # %for.cond39
# in Loop: Header=BB18_28 Depth=1
i32.const $push306=, 1
i32.add $push305=, $0, $pop306
tee_local $push304=, $0=, $pop305
i32.const $push303=, 13
i32.lt_u $push66=, $pop304, $pop303
br_if 0, $pop66 # 0: up to label48
# BB#54: # %for.body92.preheader
end_loop
i32.const $5=, 0
.LBB18_55: # %for.body92
# =>This Loop Header: Depth=1
# Child Loop BB18_57 Depth 2
# Child Loop BB18_62 Depth 2
# Child Loop BB18_66 Depth 2
# Child Loop BB18_70 Depth 2
# Child Loop BB18_74 Depth 2
# Child Loop BB18_77 Depth 2
loop # label61:
i32.const $push318=, 0
i32.const $push317=, 3
i32.shl $push67=, $5, $pop317
i32.const $push316=, longlongs
i32.add $push315=, $pop67, $pop316
tee_local $push314=, $1=, $pop315
i64.load $push313=, 0($pop314)
tee_local $push312=, $9=, $pop313
i64.ctz $push311=, $pop312
tee_local $push310=, $4=, $pop311
i64.const $push309=, 1
i64.add $push68=, $pop310, $pop309
i32.wrap/i64 $push69=, $pop68
i64.eqz $push308=, $9
tee_local $push307=, $6=, $pop308
i32.select $0=, $pop318, $pop69, $pop307
i32.const $10=, 0
block
br_if 0, $6 # 0: down to label62
# BB#56: # %for.cond.i1667.preheader
# in Loop: Header=BB18_55 Depth=1
i64.const $8=, 0
i32.const $3=, 1
.LBB18_57: # %for.cond.i1667
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
loop # label63:
copy_local $10=, $3
i64.const $push319=, 63
i64.gt_u $push70=, $8, $pop319
br_if 1, $pop70 # 1: down to label62
# BB#58: # %for.body.i1671
# in Loop: Header=BB18_57 Depth=2
i32.const $push322=, 1
i32.add $3=, $10, $pop322
i64.const $push321=, 1
i64.shl $7=, $pop321, $8
i64.const $push320=, 1
i64.add $push0=, $8, $pop320
copy_local $8=, $pop0
i64.and $push71=, $7, $9
i64.eqz $push72=, $pop71
br_if 0, $pop72 # 0: up to label63
.LBB18_59: # %my_ffsll.exit1673
# in Loop: Header=BB18_55 Depth=1
end_loop
end_block # label62:
i32.ne $push73=, $0, $10
br_if 1, $pop73 # 1: down to label34
# BB#60: # %if.end100
# in Loop: Header=BB18_55 Depth=1
block
br_if 0, $6 # 0: down to label64
# BB#61: # %land.lhs.true103
# in Loop: Header=BB18_55 Depth=1
i64.clz $push74=, $9
i32.wrap/i64 $3=, $pop74
i32.const $10=, 0
i64.const $7=, 0
i64.const $8=, 63
.LBB18_62: # %for.body.i1739
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label66:
i64.const $push324=, 1
i64.shl $push75=, $pop324, $8
i64.and $push76=, $pop75, $9
i64.const $push323=, 0
i64.ne $push77=, $pop76, $pop323
br_if 1, $pop77 # 1: down to label65
# BB#63: # %for.inc.i1743
# in Loop: Header=BB18_62 Depth=2
i64.const $push330=, -1
i64.add $8=, $8, $pop330
i32.const $push329=, 1
i32.add $10=, $10, $pop329
i64.const $push328=, 1
i64.add $push327=, $7, $pop328
tee_local $push326=, $7=, $pop327
i64.const $push325=, 64
i64.lt_u $push78=, $pop326, $pop325
br_if 0, $pop78 # 0: up to label66
.LBB18_64: # %my_clzll.exit1745
# in Loop: Header=BB18_55 Depth=1
end_loop
end_block # label65:
i32.ne $push79=, $3, $10
br_if 2, $pop79 # 2: down to label34
# BB#65: # %land.lhs.true113
# in Loop: Header=BB18_55 Depth=1
i32.wrap/i64 $3=, $4
i32.const $10=, 0
i64.const $8=, 0
.LBB18_66: # %for.body.i1781
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label68:
i64.const $push332=, 1
i64.shl $push80=, $pop332, $8
i64.and $push81=, $pop80, $9
i64.const $push331=, 0
i64.ne $push82=, $pop81, $pop331
br_if 1, $pop82 # 1: down to label67
# BB#67: # %for.inc.i1785
# in Loop: Header=BB18_66 Depth=2
i32.const $push337=, 1
i32.add $10=, $10, $pop337
i64.const $push336=, 1
i64.add $push335=, $8, $pop336
tee_local $push334=, $8=, $pop335
i64.const $push333=, 64
i64.lt_u $push83=, $pop334, $pop333
br_if 0, $pop83 # 0: up to label68
.LBB18_68: # %my_ctzll.exit1787
# in Loop: Header=BB18_55 Depth=1
end_loop
end_block # label67:
i32.ne $push84=, $3, $10
br_if 2, $pop84 # 2: down to label34
.LBB18_69: # %if.end120
# in Loop: Header=BB18_55 Depth=1
end_block # label64:
i32.call $3=, __builtin_clrsbll@FUNCTION, $9
i64.load $push340=, 0($1)
tee_local $push339=, $9=, $pop340
i64.const $push338=, 63
i64.shr_u $4=, $pop339, $pop338
i32.const $10=, 1
i64.const $7=, 1
i64.const $8=, 62
.LBB18_70: # %for.body.i1845
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
block
loop # label70:
i64.shr_u $push85=, $9, $8
i64.const $push341=, 1
i64.and $push86=, $pop85, $pop341
i64.ne $push87=, $pop86, $4
br_if 1, $pop87 # 1: down to label69
# BB#71: # %for.inc.i1849
# in Loop: Header=BB18_70 Depth=2
i64.const $push347=, -1
i64.add $8=, $8, $pop347
i32.const $push346=, 1
i32.add $10=, $10, $pop346
i64.const $push345=, 1
i64.add $push344=, $7, $pop345
tee_local $push343=, $7=, $pop344
i64.const $push342=, 64
i64.lt_u $push88=, $pop343, $pop342
br_if 0, $pop88 # 0: up to label70
.LBB18_72: # %my_clrsbll.exit1852
# in Loop: Header=BB18_55 Depth=1
end_loop
end_block # label69:
i32.const $push348=, -1
i32.add $push89=, $10, $pop348
i32.ne $push90=, $3, $pop89
br_if 1, $pop90 # 1: down to label34
# BB#73: # %if.end127
# in Loop: Header=BB18_55 Depth=1
i64.popcnt $7=, $9
i32.const $10=, 0
i64.const $8=, 0
.LBB18_74: # %for.body.i1928
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
loop # label71:
i64.const $push354=, 1
i64.shl $push91=, $pop354, $8
i64.and $push92=, $pop91, $9
i64.const $push353=, 0
i64.ne $push93=, $pop92, $pop353
i32.add $10=, $pop93, $10
i64.const $push352=, 1
i64.add $push351=, $8, $pop352
tee_local $push350=, $8=, $pop351
i64.const $push349=, 64
i64.ne $push94=, $pop350, $pop349
br_if 0, $pop94 # 0: up to label71
# BB#75: # %my_popcountll.exit1929
# in Loop: Header=BB18_55 Depth=1
end_loop
i32.wrap/i64 $push95=, $7
i32.ne $push96=, $pop95, $10
br_if 1, $pop96 # 1: down to label34
# BB#76: # %for.body.i2005.preheader
# in Loop: Header=BB18_55 Depth=1
i32.const $3=, 0
i64.const $8=, 0
.LBB18_77: # %for.body.i2005
# Parent Loop BB18_55 Depth=1
# => This Inner Loop Header: Depth=2
loop # label72:
i64.const $push360=, 1
i64.shl $push97=, $pop360, $8
i64.and $push98=, $pop97, $9
i64.const $push359=, 0
i64.ne $push99=, $pop98, $pop359
i32.add $3=, $pop99, $3
i64.const $push358=, 1
i64.add $push357=, $8, $pop358
tee_local $push356=, $8=, $pop357
i64.const $push355=, 64
i64.ne $push100=, $pop356, $pop355
br_if 0, $pop100 # 0: up to label72
# BB#78: # %my_parityll.exit2007
# in Loop: Header=BB18_55 Depth=1
end_loop
i32.xor $push101=, $3, $10
i32.const $push361=, 1
i32.and $push102=, $pop101, $pop361
br_if 2, $pop102 # 2: down to label33
# BB#79: # %for.cond90
# in Loop: Header=BB18_55 Depth=1
i32.const $push365=, 1
i32.add $push364=, $5, $pop365
tee_local $push363=, $5=, $pop364
i32.const $push362=, 12
i32.le_u $push103=, $pop363, $pop362
br_if 0, $pop103 # 0: up to label61
# BB#80: # %if.end148
end_loop
i32.const $push104=, 0
i32.call $push105=, __builtin_clrsb@FUNCTION, $pop104
i32.const $push106=, 31
i32.ne $push107=, $pop105, $pop106
br_if 0, $pop107 # 0: down to label34
# BB#81: # %my_clrsb.exit2515
i32.const $push108=, 1
i32.call $push109=, __builtin_clrsb@FUNCTION, $pop108
i32.const $push110=, 30
i32.ne $push111=, $pop109, $pop110
br_if 0, $pop111 # 0: down to label34
# BB#82: # %if.end198
i32.const $push112=, -2147483648
i32.call $push113=, __builtin_clrsb@FUNCTION, $pop112
br_if 0, $pop113 # 0: down to label34
# BB#83: # %my_clrsb.exit2362
i32.const $push114=, 1073741824
i32.call $push115=, __builtin_clrsb@FUNCTION, $pop114
br_if 0, $pop115 # 0: down to label34
# BB#84: # %my_clrsb.exit2288
i32.const $push116=, 65536
i32.call $push117=, __builtin_clrsb@FUNCTION, $pop116
i32.const $push118=, 14
i32.ne $push119=, $pop117, $pop118
br_if 0, $pop119 # 0: down to label34
# BB#85: # %my_clrsb.exit2215
i32.const $push120=, 32768
i32.call $push121=, __builtin_clrsb@FUNCTION, $pop120
i32.const $push122=, 15
i32.ne $push123=, $pop121, $pop122
br_if 0, $pop123 # 0: down to label34
# BB#86: # %my_clrsb.exit2140
i32.const $push124=, -1515870811
i32.call $push125=, __builtin_clrsb@FUNCTION, $pop124
br_if 0, $pop125 # 0: down to label34
# BB#87: # %my_clrsb.exit2073
i32.const $push126=, 1515870810
i32.call $push127=, __builtin_clrsb@FUNCTION, $pop126
br_if 0, $pop127 # 0: down to label34
# BB#88: # %for.body.i1989
i32.const $push128=, -889323520
i32.call $push129=, __builtin_clrsb@FUNCTION, $pop128
i32.const $push130=, 1
i32.ne $push131=, $pop129, $pop130
br_if 0, $pop131 # 0: down to label34
# BB#89: # %for.body.i1912
i32.const $push132=, 13303296
i32.call $push133=, __builtin_clrsb@FUNCTION, $pop132
i32.const $push134=, 7
i32.ne $push135=, $pop133, $pop134
br_if 0, $pop135 # 0: down to label34
# BB#90: # %for.body.i1832
i32.const $push136=, 51966
i32.call $push137=, __builtin_clrsb@FUNCTION, $pop136
i32.const $push138=, 15
i32.ne $push139=, $pop137, $pop138
br_if 0, $pop139 # 0: down to label34
# BB#91: # %if.end423
i32.const $push366=, -1
i32.call $5=, __builtin_clrsb@FUNCTION, $pop366
i32.const $10=, 30
i32.const $3=, 1
.LBB18_92: # %for.body.i1769
# =>This Inner Loop Header: Depth=1
block
loop # label74:
i32.const $push368=, -1
i32.shr_u $push140=, $pop368, $10
i32.const $push367=, 1
i32.and $push141=, $pop140, $pop367
i32.eqz $push406=, $pop141
br_if 1, $pop406 # 1: down to label73
# BB#93: # %for.inc.i1772
# in Loop: Header=BB18_92 Depth=1
i32.const $push373=, -1
i32.add $10=, $10, $pop373
i32.const $push372=, 1
i32.add $push371=, $3, $pop372
tee_local $push370=, $3=, $pop371
i32.const $push369=, 32
i32.lt_u $push142=, $pop370, $pop369
br_if 0, $pop142 # 0: up to label74
.LBB18_94: # %my_clrsb.exit1775
end_loop
end_block # label73:
i32.const $push143=, -1
i32.add $push144=, $3, $pop143
i32.ne $push145=, $5, $pop144
br_if 0, $pop145 # 0: down to label34
# BB#95: # %if.end440
i64.const $8=, 0
i64.const $push374=, 0
i32.call $push146=, __builtin_clrsbll@FUNCTION, $pop374
i32.const $push147=, 63
i32.ne $push148=, $pop146, $pop147
br_if 0, $pop148 # 0: down to label34
# BB#96: # %for.body.i1691.preheader
.LBB18_97: # %for.body.i1691
# =>This Inner Loop Header: Depth=1
block
loop # label76:
i64.const $push375=, 63
i64.eq $push149=, $8, $pop375
br_if 1, $pop149 # 1: down to label75
# BB#98: # %for.inc.i1695
# in Loop: Header=BB18_97 Depth=1
i64.const $push379=, 1
i64.add $push378=, $8, $pop379
tee_local $push377=, $8=, $pop378
i64.const $push376=, 64
i64.lt_u $push150=, $pop377, $pop376
br_if 0, $pop150 # 0: up to label76
# BB#99: # %if.then460
end_loop
call abort@FUNCTION
unreachable
.LBB18_100: # %if.end465
end_block # label75:
i64.const $push380=, 1
i32.call $10=, __builtin_clrsbll@FUNCTION, $pop380
i64.const $8=, 1
.LBB18_101: # %for.body.i1655
# =>This Inner Loop Header: Depth=1
block
block
loop # label79:
i64.const $push381=, 63
i64.eq $push151=, $8, $pop381
br_if 1, $pop151 # 1: down to label78
# BB#102: # %for.inc.i1659
# in Loop: Header=BB18_101 Depth=1
i64.const $push385=, 1
i64.add $push384=, $8, $pop385
tee_local $push383=, $8=, $pop384
i64.const $push382=, 64
i64.lt_u $push152=, $pop383, $pop382
br_if 0, $pop152 # 0: up to label79
# BB#103:
end_loop
i32.const $push197=, 63
i32.eq $push153=, $10, $pop197
br_if 1, $pop153 # 1: down to label77
br 2 # 2: down to label34
.LBB18_104:
end_block # label78:
i32.const $push198=, 62
i32.ne $push154=, $10, $pop198
br_if 1, $pop154 # 1: down to label34
.LBB18_105: # %for.body.i1598.preheader
end_block # label77:
i64.const $8=, 0
.LBB18_106: # %for.body.i1598
# =>This Inner Loop Header: Depth=1
block
loop # label81:
i64.const $push386=, 63
i64.eq $push155=, $8, $pop386
br_if 1, $pop155 # 1: down to label80
# BB#107: # %for.inc.i1602
# in Loop: Header=BB18_106 Depth=1
i64.const $push390=, 1
i64.add $push389=, $8, $pop390
tee_local $push388=, $8=, $pop389
i64.const $push387=, 64
i64.lt_u $push156=, $pop388, $pop387
br_if 0, $pop156 # 0: up to label81
# BB#108: # %if.then489
end_loop
call abort@FUNCTION
unreachable
.LBB18_109: # %if.end490
end_block # label80:
i64.const $push157=, -9223372036854775808
i32.call $push158=, __builtin_clrsbll@FUNCTION, $pop157
br_if 0, $pop158 # 0: down to label34
# BB#110: # %for.body.i1494
i64.const $push159=, 2
i32.call $push160=, __builtin_clrsbll@FUNCTION, $pop159
i32.const $push161=, 61
i32.ne $push162=, $pop160, $pop161
br_if 0, $pop162 # 0: down to label34
# BB#111: # %my_clrsbll.exit1419
i64.const $push163=, 4611686018427387904
i32.call $push164=, __builtin_clrsbll@FUNCTION, $pop163
br_if 0, $pop164 # 0: down to label34
# BB#112: # %for.body.i1333
i64.const $push165=, 4294967296
i32.call $push166=, __builtin_clrsbll@FUNCTION, $pop165
i32.const $push167=, 30
i32.ne $push168=, $pop166, $pop167
br_if 0, $pop168 # 0: down to label34
# BB#113: # %for.body.i1253
i64.const $push169=, 2147483648
i32.call $push170=, __builtin_clrsbll@FUNCTION, $pop169
i32.const $push171=, 31
i32.ne $push172=, $pop170, $pop171
br_if 0, $pop172 # 0: down to label34
# BB#114: # %my_clrsbll.exit1180
i64.const $push173=, -6510615555426900571
i32.call $push174=, __builtin_clrsbll@FUNCTION, $pop173
br_if 0, $pop174 # 0: down to label34
# BB#115: # %my_clrsbll.exit1100
i64.const $push175=, 6510615555426900570
i32.call $push176=, __builtin_clrsbll@FUNCTION, $pop175
br_if 0, $pop176 # 0: down to label34
# BB#116: # %for.body.i1015
i64.const $push177=, -3819392241693097984
i32.call $push178=, __builtin_clrsbll@FUNCTION, $pop177
i32.const $push179=, 1
i32.ne $push180=, $pop178, $pop179
br_if 0, $pop180 # 0: down to label34
# BB#117: # %for.body.i939
i64.const $push181=, 223195676147712
i32.call $push182=, __builtin_clrsbll@FUNCTION, $pop181
i32.const $push183=, 15
i32.ne $push184=, $pop182, $pop183
br_if 0, $pop184 # 0: down to label34
# BB#118: # %for.body.i864
i64.const $push185=, 3405695742
i32.call $push186=, __builtin_clrsbll@FUNCTION, $pop185
i32.const $push187=, 31
i32.ne $push188=, $pop186, $pop187
br_if 0, $pop188 # 0: down to label34
# BB#119: # %if.end740
i64.const $push391=, -1
i32.call $3=, __builtin_clrsbll@FUNCTION, $pop391
i64.const $8=, 62
i64.const $9=, 1
i32.const $10=, 1
.LBB18_120: # %for.body.i810
# =>This Inner Loop Header: Depth=1
block
loop # label83:
i64.const $push393=, -1
i64.shr_u $push189=, $pop393, $8
i64.const $push392=, 1
i64.and $push190=, $pop189, $pop392
i64.eqz $push191=, $pop190
br_if 1, $pop191 # 1: down to label82
# BB#121: # %for.inc.i
# in Loop: Header=BB18_120 Depth=1
i64.const $push399=, -1
i64.add $8=, $8, $pop399
i32.const $push398=, 1
i32.add $10=, $10, $pop398
i64.const $push397=, 1
i64.add $push396=, $9, $pop397
tee_local $push395=, $9=, $pop396
i64.const $push394=, 64
i64.lt_u $push192=, $pop395, $pop394
br_if 0, $pop192 # 0: up to label83
.LBB18_122: # %my_clrsbll.exit
end_loop
end_block # label82:
i32.const $push193=, -1
i32.add $push194=, $10, $pop193
i32.ne $push195=, $3, $pop194
br_if 0, $pop195 # 0: down to label34
# BB#123: # %if.end753
i32.const $push196=, 0
call exit@FUNCTION, $pop196
unreachable
.LBB18_124: # %if.then37
end_block # label34:
call abort@FUNCTION
unreachable
.LBB18_125: # %if.then140
end_block # label33:
call abort@FUNCTION
unreachable
.endfunc
.Lfunc_end18:
.size main, .Lfunc_end18-main
.hidden ints # @ints
.type ints,@object
.section .data.ints,"aw",@progbits
.globl ints
.p2align 4
ints:
.int32 0 # 0x0
.int32 1 # 0x1
.int32 2147483648 # 0x80000000
.int32 2 # 0x2
.int32 1073741824 # 0x40000000
.int32 65536 # 0x10000
.int32 32768 # 0x8000
.int32 2779096485 # 0xa5a5a5a5
.int32 1515870810 # 0x5a5a5a5a
.int32 3405643776 # 0xcafe0000
.int32 13303296 # 0xcafe00
.int32 51966 # 0xcafe
.int32 4294967295 # 0xffffffff
.size ints, 52
.hidden longs # @longs
.type longs,@object
.section .data.longs,"aw",@progbits
.globl longs
.p2align 4
longs:
.int32 0 # 0x0
.int32 1 # 0x1
.int32 2147483648 # 0x80000000
.int32 2 # 0x2
.int32 1073741824 # 0x40000000
.int32 65536 # 0x10000
.int32 32768 # 0x8000
.int32 2779096485 # 0xa5a5a5a5
.int32 1515870810 # 0x5a5a5a5a
.int32 3405643776 # 0xcafe0000
.int32 13303296 # 0xcafe00
.int32 51966 # 0xcafe
.int32 4294967295 # 0xffffffff
.size longs, 52
.hidden longlongs # @longlongs
.type longlongs,@object
.section .data.longlongs,"aw",@progbits
.globl longlongs
.p2align 4
longlongs:
.int64 0 # 0x0
.int64 1 # 0x1
.int64 -9223372036854775808 # 0x8000000000000000
.int64 2 # 0x2
.int64 4611686018427387904 # 0x4000000000000000
.int64 4294967296 # 0x100000000
.int64 2147483648 # 0x80000000
.int64 -6510615555426900571 # 0xa5a5a5a5a5a5a5a5
.int64 6510615555426900570 # 0x5a5a5a5a5a5a5a5a
.int64 -3819392241693097984 # 0xcafecafe00000000
.int64 223195676147712 # 0xcafecafe0000
.int64 3405695742 # 0xcafecafe
.int64 -1 # 0xffffffffffffffff
.size longlongs, 104
.ident "clang version 4.0.0 "
.functype abort, void
.functype __builtin_clrsb, i32
.functype __builtin_clrsbl, i32
.functype __builtin_clrsbll, i32
.functype exit, void, i32