cranelift: Add support for bswap.i128 (#5186)
* fuzzgen: Request only one variable for bswap This was included by accident. Bswap only has one input, instead of two. * cranelift: Add `bswap.i128` support Adds support only for x86, AArch64, S390X. RISCV does not yet have bswap.
This commit is contained in:
@@ -1190,15 +1190,8 @@
|
||||
|
||||
;;;; Rules for `bswap` ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(rule (lower (has_type $I16 (bswap x)))
|
||||
(lshr_imm $I32 (bswap_reg $I32 x) 16))
|
||||
|
||||
(rule (lower (has_type $I32 (bswap x)))
|
||||
(bswap_reg $I32 x))
|
||||
|
||||
(rule (lower (has_type $I64 (bswap x)))
|
||||
(bswap_reg $I64 x))
|
||||
|
||||
(rule (lower (has_type ty (bswap x)))
|
||||
(bitrev_bytes ty x))
|
||||
|
||||
;;;; Rules for `clz` ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user