|
| 1 | +;;! target = "x86_64-unknown-linux-gnu" |
| 2 | +;;! test = "compile" |
| 3 | +;;! flags = "-Ccompiler=cranelift -Ccranelift-has_sse41=false -Osignals-based-traps=n" |
| 4 | + |
| 5 | +(module |
| 6 | + (func (export "i32.trunc_f32_u") (param f32) (result i32) |
| 7 | + (i32.trunc_f32_u (local.get 0)) |
| 8 | + ) |
| 9 | +) |
| 10 | +;; wasm[0]::function[0]: |
| 11 | +;; pushq %rbp |
| 12 | +;; movq %rsp, %rbp |
| 13 | +;; subq $0x20, %rsp |
| 14 | +;; movq %r14, 0x10(%rsp) |
| 15 | +;; movq 8(%rdi), %rdx |
| 16 | +;; movq %rdi, %r14 |
| 17 | +;; movq 0x10(%rdx), %rdx |
| 18 | +;; movq %rsp, %r8 |
| 19 | +;; cmpq %rdx, %r8 |
| 20 | +;; jb 0x12d |
| 21 | +;; 24: ucomisd %xmm0, %xmm0 |
| 22 | +;; movdqu %xmm0, (%rsp) |
| 23 | +;; setp %r10b |
| 24 | +;; setne %r11b |
| 25 | +;; orl %r11d, %r10d |
| 26 | +;; testb %r10b, %r10b |
| 27 | +;; jne 0x116 |
| 28 | +;; 41: movq %r14, %rdi |
| 29 | +;; movdqu (%rsp), %xmm0 |
| 30 | +;; callq 0x244 |
| 31 | +;; movabsq $13830554455654793216, %r11 |
| 32 | +;; movq %r11, %xmm4 |
| 33 | +;; ucomisd %xmm0, %xmm4 |
| 34 | +;; setae %dil |
| 35 | +;; testb %dil, %dil |
| 36 | +;; jne 0xff |
| 37 | +;; 6e: ucomisd 0xda(%rip), %xmm0 |
| 38 | +;; setae %dl |
| 39 | +;; testb %dl, %dl |
| 40 | +;; jne 0xe8 |
| 41 | +;; 82: movdqu (%rsp), %xmm2 |
| 42 | +;; movabsq $0x43e0000000000000, %r9 |
| 43 | +;; movq %r9, %xmm7 |
| 44 | +;; ucomisd %xmm7, %xmm2 |
| 45 | +;; jae 0xb7 |
| 46 | +;; jp 0x141 |
| 47 | +;; a6: cvttsd2si %xmm2, %rax |
| 48 | +;; cmpq $0, %rax |
| 49 | +;; jge 0xda |
| 50 | +;; b5: ud2 |
| 51 | +;; movaps %xmm2, %xmm0 |
| 52 | +;; subsd %xmm7, %xmm0 |
| 53 | +;; cvttsd2si %xmm0, %rax |
| 54 | +;; cmpq $0, %rax |
| 55 | +;; jl 0x143 |
| 56 | +;; cd: movabsq $9223372036854775808, %r9 |
| 57 | +;; addq %r9, %rax |
| 58 | +;; movq 0x10(%rsp), %r14 |
| 59 | +;; addq $0x20, %rsp |
| 60 | +;; movq %rbp, %rsp |
| 61 | +;; popq %rbp |
| 62 | +;; retq |
| 63 | +;; e8: movl $6, %esi |
| 64 | +;; ed: movq %r14, %rdi |
| 65 | +;; f0: callq 0x284 |
| 66 | +;; f5: movq %r14, %rdi |
| 67 | +;; f8: callq 0x2c8 |
| 68 | +;; fd: ud2 |
| 69 | +;; ff: movl $6, %esi |
| 70 | +;; 104: movq %r14, %rdi |
| 71 | +;; 107: callq 0x284 |
| 72 | +;; 10c: movq %r14, %rdi |
| 73 | +;; 10f: callq 0x2c8 |
| 74 | +;; 114: ud2 |
| 75 | +;; 116: movl $8, %esi |
| 76 | +;; 11b: movq %r14, %rdi |
| 77 | +;; 11e: callq 0x284 |
| 78 | +;; 123: movq %r14, %rdi |
| 79 | +;; 126: callq 0x2c8 |
| 80 | +;; 12b: ud2 |
| 81 | +;; 12d: xorl %esi, %esi |
| 82 | +;; 12f: movq %r14, %rdi |
| 83 | +;; 132: callq 0x284 |
| 84 | +;; 137: movq %r14, %rdi |
| 85 | +;; 13a: callq 0x2c8 |
| 86 | +;; 13f: ud2 |
| 87 | +;; 141: ud2 |
| 88 | +;; 143: ud2 |
| 89 | +;; 145: addb %al, (%rax) |
| 90 | +;; 147: addb %al, (%rax) |
| 91 | +;; 149: addb %al, (%rax) |
| 92 | +;; 14b: addb %al, (%rax) |
| 93 | +;; 14d: addb %al, (%rax) |
| 94 | +;; 14f: addb %al, (%rax) |
| 95 | +;; 151: addb %al, (%rax) |
| 96 | +;; 153: addb %al, (%rax) |
| 97 | +;; 155: addb %dh, %al |
| 98 | +;; 157: addb %al, (%r8) |
| 99 | +;; 15a: addb %al, (%rax) |
| 100 | +;; 15c: addb %al, (%rax) |
| 101 | +;; 15e: addb %al, (%rax) |
| 102 | + |
| 103 | +;; wasm[0]::function[0]: |
| 104 | +;; pushq %rbp |
| 105 | +;; movq %rsp, %rbp |
| 106 | +;; subq $0x20, %rsp |
| 107 | +;; movq %r12, 0x10(%rsp) |
| 108 | +;; movdqu %xmm0, (%rsp) |
| 109 | +;; movq 8(%rdi), %r10 |
| 110 | +;; movq %rdi, %r12 |
| 111 | +;; movq 0x10(%r10), %r10 |
| 112 | +;; movq %rsp, %r11 |
| 113 | +;; cmpq %r10, %r11 |
| 114 | +;; jb 0x122 |
| 115 | +;; 29: xorpd %xmm0, %xmm0 |
| 116 | +;; movdqu (%rsp), %xmm4 |
| 117 | +;; cvtss2sd %xmm4, %xmm0 |
| 118 | +;; ucomisd %xmm0, %xmm0 |
| 119 | +;; setp %dil |
| 120 | +;; setne %al |
| 121 | +;; orl %eax, %edi |
| 122 | +;; testb %dil, %dil |
| 123 | +;; jne 0x10b |
| 124 | +;; 4d: movq %r12, %rdi |
| 125 | +;; callq 0x232 |
| 126 | +;; movabsq $13830554455654793216, %rax |
| 127 | +;; movq %rax, %xmm7 |
| 128 | +;; ucomisd %xmm0, %xmm7 |
| 129 | +;; setae %dl |
| 130 | +;; testb %dl, %dl |
| 131 | +;; jne 0xf4 |
| 132 | +;; 74: ucomisd 0xc4(%rip), %xmm0 |
| 133 | +;; setae %r10b |
| 134 | +;; testb %r10b, %r10b |
| 135 | +;; jne 0xdd |
| 136 | +;; 89: movdqu (%rsp), %xmm4 |
| 137 | +;; movl $0x4f000000, %esi |
| 138 | +;; movd %esi, %xmm2 |
| 139 | +;; ucomiss %xmm2, %xmm4 |
| 140 | +;; jae 0xb5 |
| 141 | +;; jp 0x136 |
| 142 | +;; a6: cvttss2si %xmm4, %eax |
| 143 | +;; cmpl $0, %eax |
| 144 | +;; jge 0xcf |
| 145 | +;; b3: ud2 |
| 146 | +;; movaps %xmm4, %xmm3 |
| 147 | +;; subss %xmm2, %xmm3 |
| 148 | +;; cvttss2si %xmm3, %eax |
| 149 | +;; cmpl $0, %eax |
| 150 | +;; jl 0x138 |
| 151 | +;; c9: addl $0x80000000, %eax |
| 152 | +;; movq 0x10(%rsp), %r12 |
| 153 | +;; addq $0x20, %rsp |
| 154 | +;; movq %rbp, %rsp |
| 155 | +;; popq %rbp |
| 156 | +;; retq |
| 157 | +;; dd: movl $6, %esi |
| 158 | +;; e2: movq %r12, %rdi |
| 159 | +;; e5: callq 0x272 |
| 160 | +;; ea: movq %r12, %rdi |
| 161 | +;; ed: callq 0x2b6 |
| 162 | +;; f2: ud2 |
| 163 | +;; f4: movl $6, %esi |
| 164 | +;; f9: movq %r12, %rdi |
| 165 | +;; fc: callq 0x272 |
| 166 | +;; 101: movq %r12, %rdi |
| 167 | +;; 104: callq 0x2b6 |
| 168 | +;; 109: ud2 |
| 169 | +;; 10b: movl $8, %esi |
| 170 | +;; 110: movq %r12, %rdi |
| 171 | +;; 113: callq 0x272 |
| 172 | +;; 118: movq %r12, %rdi |
| 173 | +;; 11b: callq 0x2b6 |
| 174 | +;; 120: ud2 |
| 175 | +;; 122: xorl %esi, %esi |
| 176 | +;; 124: movq %r12, %rdi |
| 177 | +;; 127: callq 0x272 |
| 178 | +;; 12c: movq %r12, %rdi |
| 179 | +;; 12f: callq 0x2b6 |
| 180 | +;; 134: ud2 |
| 181 | +;; 136: ud2 |
| 182 | +;; 138: ud2 |
| 183 | +;; 13a: addb %al, (%rax) |
| 184 | +;; 13c: addb %al, (%rax) |
| 185 | +;; 13e: addb %al, (%rax) |
| 186 | +;; 140: addb %al, (%rax) |
| 187 | +;; 142: addb %al, (%rax) |
| 188 | +;; 144: addb %al, (%rax) |
| 189 | +;; 146: lock addb %al, (%r8) |
| 190 | +;; 14a: addb %al, (%rax) |
| 191 | +;; 14c: addb %al, (%rax) |
| 192 | +;; 14e: addb %al, (%rax) |
0 commit comments