diff options
Diffstat (limited to 'test/bitfield-assignment-sign-extend.qbe')
-rw-r--r-- | test/bitfield-assignment-sign-extend.qbe | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/test/bitfield-assignment-sign-extend.qbe b/test/bitfield-assignment-sign-extend.qbe index c2af6b8..0a4d221 100644 --- a/test/bitfield-assignment-sign-extend.qbe +++ b/test/bitfield-assignment-sign-extend.qbe @@ -2,20 +2,18 @@ export function w $main() { @start.1 @body.2 - %.1 =l copy $s - %.2 =l mul 0, 1 - %.3 =l add %.1, %.2 - %.4 =l copy %.3 - %.5 =w shl 15, 0 - %.6 =w shl %.5, 28 - %.7 =w sar %.6, 28 - %.8 =w and %.5, 15 - %.9 =w loadw %.4 - %.10 =w and %.9, 18446744073709551600 - %.11 =w or %.8, %.10 - storew %.11, %.4 - %.12 =w sub 0, 1 - %.13 =w cnew %.7, %.12 - ret %.13 + %.1 =l mul 0, 1 + %.2 =l add $s, %.1 + %.3 =w shl 15, 0 + %.4 =w shl %.3, 28 + %.5 =w sar %.4, 28 + %.6 =w and %.3, 15 + %.7 =w loadw %.2 + %.8 =w and %.7, 18446744073709551600 + %.9 =w or %.6, %.8 + storew %.9, %.2 + %.10 =w sub 0, 1 + %.11 =w cnew %.5, %.10 + ret %.11 } export data $s = align 4 { z 4 } |