This switches from a custom list of architectures to use the target-lexicon crate. - "set is_64bit=1; isa x86" is replaced with "target x86_64", and similar for other architectures, and the `is_64bit` flag is removed entirely. - The `is_compressed` flag is removed too; it's no longer being used to control REX prefixes on x86-64, ARM and Thumb are separate architectures in target-lexicon, and we can figure out how to select RISC-V compressed encodings when we're ready.
20 lines
409 B
Plaintext
20 lines
409 B
Plaintext
test regalloc
|
|
target riscv32 enable_e
|
|
|
|
; regex: V=v\d+
|
|
|
|
; Check that we can handle a function return value that got spilled.
|
|
function %spill_return() -> i32 {
|
|
fn0 = %foo() -> i32 system_v
|
|
|
|
ebb0:
|
|
v0 = call fn0()
|
|
; check: $(reg=$V) = call fn0
|
|
; check: v0 = spill $reg
|
|
v2 = call fn0()
|
|
; check: v2 = call fn0
|
|
return v0
|
|
; check: $(reload=$V) = fill v0
|
|
; check: return $reload
|
|
}
|