llvm-6502/include/llvm
Stepan Dyatkovskiy 46abfcf418 For ARM backend, fixed "byval" attribute support.
Now even the small structures could be passed within byval (small enough
to be stored in GPRs).
In regression tests next function prototypes are checked:

PR15293:
  %artz = type { i32 }
  define void @foo(%artz* byval %s)
  define void @foo2(%artz* byval %s, i32 %p, %artz* byval %s2)
foo: "s" stored in R0
foo2: "s" stored in R0, "s2" stored in R2.

Next AAPCS rules are checked:
5.5 Parameters Passing, C.4 and C.5,
"ParamSize" is parameter size in 32bit words:
-- NSAA != 0, NCRN < R4 and NCRN+ParamSize > R4.
   Parameter should be sent to the stack; NCRN := R4.
-- NSAA != 0, and NCRN < R4, NCRN+ParamSize < R4.
   Parameter stored in GPRs; NCRN += ParamSize.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181148 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-05 07:48:36 +00:00
..
ADT Add ArrayRef constructor from None, and do the cleanups that this constructor enables 2013-05-05 00:40:33 +00:00
Analysis
Assembly
Bitcode
CodeGen For ARM backend, fixed "byval" attribute support. 2013-05-05 07:48:36 +00:00
Config Allow host triple to be correctly overridden in CMake builds 2013-05-04 07:36:23 +00:00
DebugInfo Create a stub for DWARF parser unittests 2013-04-17 08:29:02 +00:00
ExecutionEngine This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00
IR Add ArrayRef constructor from None, and do the cleanups that this constructor enables 2013-05-05 00:40:33 +00:00
IRReader
MC Add ArrayRef constructor from None, and do the cleanups that this constructor enables 2013-05-05 00:40:33 +00:00
Object Revert r181009. 2013-05-03 23:57:17 +00:00
Option
Support PatternMatch: Fix documentation - 'function' not 'attribute' 2013-05-05 02:01:41 +00:00
TableGen
Target Move C++ code out of the C headers and into either C++ headers 2013-04-22 22:47:22 +00:00
Transforms fix a typo that due to cu&paste quadrupled itself 2013-04-26 18:10:50 +00:00
AutoUpgrade.h
CMakeLists.txt
DebugInfo.h Revert "Revert "PR14606: debug info imported_module support"" 2013-04-22 06:12:31 +00:00
DIBuilder.h Make doxygen comment match declaration. 2013-04-22 15:21:03 +00:00
GVMaterializer.h
InitializePasses.h
InstVisitor.h
LinkAllIR.h
LinkAllPasses.h
Linker.h Fix a performance bug in the Linker. 2013-05-04 05:05:18 +00:00
Pass.h
PassAnalysisSupport.h
PassManager.h This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00
PassManagers.h
PassRegistry.h This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00
PassSupport.h