- Jul 24, 2013
-
-
Elena Demikhovsky authored
I'm starting to commit KNL backend. I'll push patches one-by-one. This patch includes support for the extended register set XMM16-31, YMM16-31, ZMM0-31. The full ISA you can see here: http://software.intel.com/en-us/intel-isa-extensions llvm-svn: 187030
-
- Jul 12, 2013
-
-
Charles Davis authored
Summary: This patch adds explicit calling convention types for the Win64 and System V/x86-64 ABIs. This allows code to override the default, and use the Win64 convention on a target that wants to use SysV (and vice-versa). This is needed to implement the `ms_abi` and `sysv_abi` GNU attributes. Reviewers: CC: llvm-svn: 186144
-
- Apr 03, 2013
-
-
Timur Iskhodzhanov authored
llvm-svn: 178634
-
- Feb 22, 2013
-
-
Peter Collingbourne authored
llvm-svn: 175911
-
- Nov 20, 2012
-
-
Elena Demikhovsky authored
llvm-svn: 168359
-
- Nov 16, 2012
-
-
Duncan Sands authored
llvm-svn: 168166
-
- Oct 24, 2012
-
-
Elena Demikhovsky authored
llvm-svn: 166566
-
Rafael Espindola authored
the difference from "int x" (which should go in registers and "struct y {int x;}" (which should not). Clang will be updated in the next patches. llvm-svn: 166536
-
- May 30, 2012
-
-
Chris Lattner authored
it's pointed out that R11 can be used for magic things, and doing things just for 64-bit registers is silly. Just optimize 3 more. llvm-svn: 157699
-
Chris Lattner authored
integer registers. This is already supported by the fastcc convention, but it doesn't hurt to support it in the standard conventions as well. In cases where we can cheat at the calling convention, this allows us to avoid returning things through memory in more cases. llvm-svn: 157698
-
- May 08, 2012
-
-
Jakob Stoklund Olesen authored
Share the CalleeSavedRegs defs between all calling conventions having no callee-saved registers. Patch by Yiannis Tsiouris! llvm-svn: 156382
-
- Feb 22, 2012
-
-
Aaron Ballman authored
llvm-svn: 151123
-
- Feb 18, 2012
-
-
Jia Liu authored
Emacs-tag and some comment fix for all ARM, CellSPU, Hexagon, MBlaze, MSP430, PPC, PTX, Sparc, X86, XCore. llvm-svn: 150878
-
- Feb 01, 2012
-
-
Elena Demikhovsky authored
Fixed Win64 calling conventions. llvm-svn: 149494
-
- Jan 17, 2012
-
-
Jakob Stoklund Olesen authored
Add a trivial implementation of the getCallPreservedMask() hook. llvm-svn: 148347
-
- Jan 10, 2012
-
-
Craig Topper authored
Remove hasXMM/hasXMMInt functions. Move callers to hasSSE1/hasSSE2. This is the final piece to remove the AVX hack that disabled SSE. llvm-svn: 147843
-
- Dec 01, 2011
-
-
- Jul 01, 2011
-
-
Eli Friedman authored
llvm-svn: 134264
-
- Mar 03, 2011
-
-
Tilmann Scheller authored
llvm-svn: 126934
-
- Mar 02, 2011
-
-
Tilmann Scheller authored
llvm-svn: 126862
-
- Dec 10, 2010
-
-
Nate Begeman authored
Formalize the notion that AVX and SSE are non-overlapping extensions from the compiler's point of view. Per email discussion, we either want to always use VEX-prefixed instructions or never use them, and are taking "HasAVX" to mean "Always use VEX". Passing -mattr=-avx,+sse42 should serve to restore legacy SSE support when desirable. llvm-svn: 121439
-
- Oct 31, 2010
-
-
Duncan Sands authored
calling convention out of the fast and normal ISel files, and into the calling convention TD file. llvm-svn: 117856
-
- Oct 01, 2010
-
-
Dale Johannesen authored
The x86_mmx type is used for MMX intrinsics, parameters and return values where these use MMX registers, and is also supported in load, store, and bitcast. Only the above operations generate MMX instructions, and optimizations do not operate on or produce MMX intrinsics. MMX-sized vectors <2 x i32> etc. are lowered to XMM or split into smaller pieces. Optimizations may occur on these forms and the result casted back to x86_mmx, provided the result feeds into a previous existing x86_mmx operation. The point of all this is prevent optimizations from introducing MMX operations, which is unsafe due to the EMMS problem. llvm-svn: 115243
-
- Aug 06, 2010
-
-
Bruno Cardoso Lopes authored
Support very basic (doesn't include ABI support in the front-end, varags, ...) 256-bit argument passing and return for AVX llvm-svn: 110394
-
- Jul 05, 2010
-
-
Chris Lattner authored
v2f32 is illegal on x86. llvm-svn: 107609
-
- May 16, 2010
-
-
Anton Korobeynikov authored
Patch by Charles Davis and Steven Watanabe! llvm-svn: 103902
-
- Mar 11, 2010
-
-
Chris Lattner authored
convention. Patch by David Terei! llvm-svn: 98212
-
- Dec 15, 2009
-
-
Kenneth Uildriks authored
llvm-svn: 91410
-
- Aug 03, 2009
-
-
Anton Korobeynikov authored
Add 'Indirect' LocInfo class and use to pass __m128 on win64. Also minore fixes here and there (mostly __m64). llvm-svn: 77964
-
Anton Korobeynikov authored
Cleanup Darwin MMX calling conv stuff - make the stuff more generic. This also fixes a subtle bug, when 6th v1i64 argument passed wrongly. llvm-svn: 77963
-
Anton Korobeynikov authored
Unbreak Win64 CC. Step one: honour register save area, fix some alignment and provide a different set of call-clobberred registers. llvm-svn: 77962
-
- Jun 12, 2009
-
-
Arnold Schwaighofer authored
out of sync with regular cc. The only difference between the tail call cc and the normal cc was that one parameter register - R9 - was reserved for calling functions through a function pointer. After time the tail call cc has gotten out of sync with the regular cc. We can use R11 which is also caller saved but not used as parameter register for potential function pointers and remove the special tail call cc on x86-64. llvm-svn: 73233
-
- Mar 24, 2009
-
-
Dan Gohman authored
to be returned in DL. LLVM's multiple-return-value support is not ABI-conforming; front-ends that wish to have code emitted that conforms to an ABI are currently expected to make arrangements for this on their own rather than assuming that multiple-return-values will automatically do the right thing. This commit doesn't fundamentally change this situation. llvm-svn: 67588
-
- Mar 23, 2009
-
-
Dan Gohman authored
llvm-svn: 67507
-
Dan Gohman authored
i8 return values. llvm-svn: 67502
-
- Feb 23, 2009
-
-
Evan Cheng authored
llvm-svn: 65313
-
- Feb 22, 2009
-
-
Evan Cheng authored
llvm-svn: 65274
-
- Feb 01, 2009
-
-
Torok Edwin authored
var-args, and don't allow FP return values llvm-svn: 63495
-
- Dec 03, 2008
-
-
Dan Gohman authored
than just i32. llvm-svn: 60455
-
Dan Gohman authored
delegates to the regular x86-32 convention which handles byval, but only after it handles a few cases, and it's necessary to handle byval before handling those cases. This fixes PR3122 (and rdar://6400815), llvm-gcc miscompiling LLVM. llvm-svn: 60453
-