Bug 6563 – wrong code when using at least 8 XMM regs

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
Other
OS
FreeBSD
Creation time
2011-08-27T11:52:00Z
Last change time
2011-08-27T20:14:35Z
Keywords
wrong-code
Assigned to
nobody
Creator
code

Comments

Comment #0 by code — 2011-08-27T11:52:50Z
alias float T; T val = 1; int plot(T a, T b, T c, T d, T e, T f, T g, T h) { assert(a == val); return 0; } int main() { return plot( val, val, val, val, val, val, val, val, ); } -- The values h-b are correctly loaded from XMM0-XMM6. The calling function put a correctly into XMM7 but the plot function loads it from the calling stack (misinterpreted as push parameter).
Comment #1 by code — 2011-08-27T12:46:10Z
Comment #2 by alienballance — 2011-08-27T18:20:52Z
*** Issue 6562 has been marked as a duplicate of this issue. ***
Comment #3 by bugzilla — 2011-08-27T20:14:35Z