David Woodhouse
d7ae82f8f5
[x86] Disambiguate RET[QL] and fix aliases for 16-bit mode
...
I couldn't see how to do this sanely without splitting RETQ from RETL.
Eric says: "sad about the inability to roundtrip them now, but...".
I have no idea what that means, but perhaps it wants preserving in the
commit comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198756 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-08 12:58:07 +00:00
Rafael Espindola
11b11d77ee
Switch to the new MingW ABI.
...
GCC 4.7 changed the MingW ABI. On the LLVM side it means that sret functions
don't pop the stack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197163 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-12 16:06:58 +00:00
Rafael Espindola
a61f9456a0
Add -mcpu=core2 to all llc invocations in this test.
...
Should fix the atom buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196340 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-04 01:25:24 +00:00
Rafael Espindola
b972f33cdd
Use CHECK-LABEL to make this test more strict.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196321 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-03 21:12:36 +00:00
Rafael Espindola
21a9fd247e
Fix mingw32 thiscall + sret.
...
Unlike msvc, when handling a thiscall + sret gcc will
* Put the sret in %ecx
* Put the this pointer is (%esp)
This fixes, for example, calling stringstream::str.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196312 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-03 20:51:23 +00:00
Andrew Trick
dd0fb018a7
Track IR ordering of SelectionDAG nodes 3/4.
...
Remove the old IR ordering mechanism and switch to new one. Fix unit
test failures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182704 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-25 03:08:10 +00:00
Timur Iskhodzhanov
f340d34a97
Make the test/CodeGen/X86/win32_sret.ll reliable on any CPU by explicitly specifying the -mcpu
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178885 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-05 17:05:56 +00:00
Timur Iskhodzhanov
e79c17856e
Temporarily relax the WIN32 checks in the SRet test to fix the Atom D2700 bot
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178635 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-03 12:17:15 +00:00
Timur Iskhodzhanov
eea35066ab
Fix SRet for thiscall in i686-pc-win32
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178634 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-03 11:27:54 +00:00
Timur Iskhodzhanov
a46f82dbf9
Make Win32 put the SRet address into EAX, fixes PR15556
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178291 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-28 21:30:04 +00:00
Eli Friedman
9a2478ac1a
Support MSVC x86-32 sret convention. PR11688. Patch by Joe Groff.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148513 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-20 00:05:46 +00:00