llvm-6502/include/llvm/IR
Reid Kleckner 65c98b9da4 [ms-cxxabi] Add a new calling convention that swaps 'this' and 'sret'
MSVC always places the 'this' parameter for a method first.  The
implicit 'sret' pointer for methods always comes second.  We already
implement this for __thiscall by putting sret parameters on the stack,
but __cdecl methods require putting both parameters on the stack in
opposite order.

Using a special calling convention allows frontends to keep the sret
parameter first, which avoids breaking lots of assumptions in LLVM and
Clang.

Fixes PR15768 with the corresponding change in Clang.

Reviewers: ributzka, majnemer

Differential Revision: http://llvm-reviews.chandlerc.com/D2663

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200561 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-31 17:41:22 +00:00
..
Argument.h Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
AssemblyAnnotationWriter.h Move the LLVM IR asm writer header files into the IR directory, as they 2014-01-07 12:34:26 +00:00
Attributes.h Begin adding docs and IR-level support for the inalloca attribute 2013-12-19 02:14:12 +00:00
BasicBlock.h
CallingConv.h [ms-cxxabi] Add a new calling convention that swaps 'this' and 'sret' 2014-01-31 17:41:22 +00:00
CMakeLists.txt [CMake] Introduce LLVM_INCLUDE_DIR. 2013-12-16 15:05:39 +00:00
Constant.h
Constants.h Add a const lookup routine to get a BlockAddress constant if there is 2014-01-19 02:13:50 +00:00
DataLayout.h Use 'w' instead of 'c' to represent the win32 mangling. 2014-01-10 13:42:12 +00:00
DerivedTypes.h Fix the segfault reported in PR 11990. 2013-12-07 00:13:34 +00:00
DiagnosticInfo.h Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
DiagnosticPrinter.h Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
Dominators.h [PM] Split DominatorTree into a concrete analysis result object which 2014-01-13 13:07:17 +00:00
Function.h
GlobalAlias.h
GlobalValue.h Decouple dllexport/dllimport from linkage 2014-01-14 15:22:47 +00:00
GlobalVariable.h
InlineAsm.h
InstrTypes.h
Instruction.def
Instruction.h Fix pr14893. 2014-01-28 16:56:46 +00:00
Instructions.h Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
IntrinsicInst.h
Intrinsics.h
Intrinsics.td Grow the stackmap/patchpoint format to hold 64-bit IDs. 2013-12-13 18:37:10 +00:00
IntrinsicsAArch64.td [AArch64] Refactor NEON floating-point Max/Min/Maxnm/Minnm across vector AArch64 2013-12-11 23:21:25 +00:00
IntrinsicsARM.td
IntrinsicsHexagon.td
IntrinsicsMips.td MIPS: mark intrinsics IntrNoMem so all patterns using them are consistent. 2014-01-21 10:41:16 +00:00
IntrinsicsNVVM.td
IntrinsicsPowerPC.td
IntrinsicsR600.td
IntrinsicsX86.td AVX-512: Embedded Rounding Control - encoding and printing 2014-01-13 12:55:03 +00:00
IntrinsicsXCore.td
IRBuilder.h Fix a bug in IRBuilder that's been there for who knows how long. It 2014-01-05 03:22:33 +00:00
IRPrintingPasses.h [PM] Fix stale header blocker, found by Duncan Smith in code review! 2014-01-14 05:50:19 +00:00
LegacyPassManager.h
LegacyPassManagers.h Fix comments for PassDebuggingString 2013-12-08 01:28:17 +00:00
LLVMContext.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
Mangler.h Use a raw_stream to implement the mangler. 2014-01-29 02:30:38 +00:00
MDBuilder.h
Metadata.h
Module.h Return an error_code from materializeAllPermanently. 2014-01-14 23:51:27 +00:00
OperandTraits.h
Operator.h Fix more instances of dropped fast math flags when optimizing FADD instructions. All found by inspection (aka grep). 2014-01-18 00:48:14 +00:00
PassManager.h [PM] Add names to passes under the new pass manager, and a debug output 2014-01-11 11:52:05 +00:00
SymbolTableListTraits.h
Type.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
TypeBuilder.h
TypeFinder.h
Use.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
User.h
Value.h Put the functionality for printing a value to a raw_ostream as an 2014-01-09 02:29:41 +00:00
ValueSymbolTable.h
Verifier.h [PM] Wire up the Verifier for the new pass manager and connect it to the 2014-01-20 11:34:08 +00:00