Use single index for param register allocation for windows callconv (… (#693)

* Use single index for param register allocation for windows callconv (#691)

The used registers depend entirely on the parameter index (1st, 2nd, 3rd, 4th, ... param)
and we cannot shift unused registers to other indexes, if they are not designated for
the use for that parameter index.
This commit is contained in:
Steffen Butzer
2019-03-05 12:17:41 +01:00
committed by Benjamin Bouvier
parent 2f2626f4b3
commit 2a519092a0
2 changed files with 18 additions and 3 deletions

View File

@@ -31,3 +31,9 @@ ebb0(v0: i64, v1: i64, v2: i64, v3: i64, v4: i64):
return
}
; check: function %five_args(i64 [%rcx], i64 [%rdx], i64 [%r8], i64 [%r9], i64 [32], i64 fp [%rbp]) -> i64 fp [%rbp] windows_fastcall {
function %mixed_int_float(i64, f64, i64, f32) windows_fastcall {
ebb0(v0: i64, v1: f64, v2: i64, v3: f32):
return
}
; check: function %mixed_int_float(i64 [%rcx], f64 [%xmm1], i64 [%r8], f32 [%xmm3], i64 fp [%rbp]) -> i64 fp [%rbp] windows_fastcall {