* Add TLS support * Add binemit and legalize tests * Spill all caller-saved registers when necessary
19 lines
642 B
Plaintext
19 lines
642 B
Plaintext
test regalloc
|
|
set tls_model=macho
|
|
target x86_64
|
|
|
|
function u0:0(i32) -> i32, i64 {
|
|
gv0 = symbol colocated tls u1:0
|
|
|
|
block0(v0: i32):
|
|
; check: block0(v2: i32 [%rdi]):
|
|
; nextln: [RexOp1spillSib32#89,ss0] v0 = spill v2
|
|
v1 = global_value.i64 gv0
|
|
; nextln: [macho_tls_get_addr#00,%rax] v1 = x86_macho_tls_get_addr gv0
|
|
; nextln: [RexOp1fillSib32#8b,%r15] v3 = fill v0
|
|
return v0, v1
|
|
; nextln: [RexOp1rmov#8089] regmove v1, %rax -> %rdx
|
|
; nextln: [RexOp1rmov#89] regmove v3, %r15 -> %rax
|
|
; nextln: [Op1ret#c3] return v3, v1
|
|
}
|