llvm-6502/include/llvm/IR
Reid Kleckner d5de327da0 X86: Implement the vectorcall calling convention
This is a Microsoft calling convention that supports both x86 and x86_64
subtargets. It passes vector and floating point arguments in XMM0-XMM5,
and passes them indirectly once they are consumed.

Homogenous vector aggregates of up to four elements can be passed in
sequential vector registers, but this part is not implemented in LLVM
and will be handled in Clang.

On 32-bit x86, it is similar to fastcall in that it uses ecx:edx as
integer register parameters and is callee cleanup. On x86_64, it
delegates to the normal win64 calling convention.

Reviewers: majnemer

Differential Revision: http://reviews.llvm.org/D5943

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220745 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-28 01:29:26 +00:00
..
Argument.h
AssemblyAnnotationWriter.h
Attributes.h Revert accidentally committed r217107 2014-09-03 23:38:05 +00:00
AutoUpgrade.h
BasicBlock.h
CallingConv.h X86: Implement the vectorcall calling convention 2014-10-28 01:29:26 +00:00
CallSite.h
CFG.h
CMakeLists.txt
Comdat.h
Constant.h
ConstantFolder.h
ConstantRange.h
Constants.h Add isInfinity to ConstantFP 2014-10-10 02:15:04 +00:00
DataLayout.h Switch the default DataLayout to be little endian, and make the variable 2014-10-20 10:41:29 +00:00
DebugInfo.h Make getDISubprogram(const Function *F) available in LLVM 2014-10-23 23:46:28 +00:00
DebugLoc.h
DerivedTypes.h
DiagnosticInfo.h Update the error handling of lib/Linker. 2014-10-25 04:06:10 +00:00
DiagnosticPrinter.h
DIBuilder.h DI: Use a DenseMap instead of named metadata, NFC 2014-10-15 16:11:41 +00:00
Dominators.h
Function.h Don't ever call materializeAllPermanently during LTO. 2014-10-24 18:13:04 +00:00
GetElementPtrTypeIterator.h
GlobalAlias.h
GlobalObject.h Don't ever call materializeAllPermanently during LTO. 2014-10-24 18:13:04 +00:00
GlobalValue.h Modernize the error handling of the Materialize function. 2014-10-24 22:50:48 +00:00
GlobalVariable.h
GVMaterializer.h Modernize the error handling of the Materialize function. 2014-10-24 22:50:48 +00:00
InlineAsm.h
InstIterator.h
InstrTypes.h Revert "Teach the load analysis to allow finding available values which require" (r220277) 2014-10-21 23:49:52 +00:00
Instruction.def
Instruction.h Refactor AtomicExpandPass and add a generic isAtomic() method to Instruction 2014-09-03 21:29:59 +00:00
Instructions.h Update comment on AtomicRMWInst::Nand 2014-09-22 06:47:10 +00:00
InstVisitor.h
IntrinsicInst.h Move the complex address expression out of DIVariable and into an extra 2014-10-01 18:55:02 +00:00
Intrinsics.h remove class/function/variable names from comments; NFC 2014-10-24 17:55:59 +00:00
Intrinsics.td Add minnum / maxnum intrinsics 2014-10-21 23:00:20 +00:00
IntrinsicsAArch64.td
IntrinsicsARM.td
IntrinsicsHexagon.td
IntrinsicsMips.td
IntrinsicsNVVM.td
IntrinsicsPowerPC.td [Power] Use AtomicExpandPass for fence insertion, and use lwsync where appropriate 2014-09-23 20:46:49 +00:00
IntrinsicsR600.td R600/SI: Add missing parameter to div_fmas intrinsic 2014-10-21 22:20:55 +00:00
IntrinsicsX86.td [AVX512] Intrinsics for vextract*x4 2014-10-08 23:25:37 +00:00
IntrinsicsXCore.td
IRBuilder.h Revert "Teach the load analysis to allow finding available values which require" (r220277) 2014-10-21 23:49:52 +00:00
IRPrintingPasses.h
LeakDetector.h
LegacyPassManager.h
LegacyPassManagers.h FunctionPassManager isn't used by the JIT anymore, it is used in 2014-09-10 10:48:06 +00:00
LegacyPassNameParser.h
LLVMContext.h Introduce enum values for previously defined metadata types. (NFC) 2014-10-21 00:13:20 +00:00
Mangler.h
MDBuilder.h
Metadata.h IR: Move NumOperands from User to Value, NFC 2014-10-15 20:39:05 +00:00
Module.h Modernize the error handling of the Materialize function. 2014-10-24 22:50:48 +00:00
NoFolder.h
OperandTraits.h
Operator.h remove function names from comments; NFC 2014-10-15 16:20:45 +00:00
PassManager.h
PatternMatch.h Unbreak the build. 2014-10-25 18:20:17 +00:00
PredIteratorCache.h
SymbolTableListTraits.h
Type.h
TypeBuilder.h
TypeFinder.h
Use.h
UseListOrder.h
User.h IR: Move NumOperands from User to Value, NFC 2014-10-15 20:39:05 +00:00
Value.h IR: Move NumOperands from User to Value, NFC 2014-10-15 20:39:05 +00:00
ValueHandle.h IR: Cleanup comments for Value, User, and MDNode 2014-10-15 20:28:31 +00:00
ValueMap.h
ValueSymbolTable.h
Verifier.h