summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/ppc64-varargs-struct.c
Commit message (Collapse)AuthorAgeFilesLines
* Since the file has both ppc and ppc64 tests in it rename it.Roman Divacky2014-11-041-112/+0
| | | | llvm-svn: 221285
* Rewrite the test to not require asserts.Roman Divacky2014-11-041-72/+72
| | | | llvm-svn: 221284
* Require asserts to unbreak the buildbots.Roman Divacky2014-11-031-0/+1
| | | | llvm-svn: 221174
* Implement vaarg lowering for ppc32. Lowering of scalars and aggregatesRoman Divacky2014-11-031-0/+81
| | | | | | is supported. Complex numbers are not. llvm-svn: 221170
* clang/test: REQUIRES: s/ppc{32|64}-registered-target/powerpc-registered-target/NAKAMURA Takumi2013-12-041-1/+1
| | | | llvm-svn: 196349
* This patch is a follow-up to r166805. As suggested on-list, a check wasBill Schmidt2012-10-261-0/+4
| | | | | | added to ensure no extra alignment code is added in the future. llvm-svn: 166812
* This patch addresses a 64-bit PowerPC ELF ABI compatibility issue withBill Schmidt2012-10-261-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | varargs parameter passing. A strict reading of the ABI indicates that any argument with alignment greater than 8 may require skipping doublewords in the parameter save area to align the argument, and hence require skipping GPRs. In practice, this is not done by GCC. The alignment restriction is used for internal alignment of a structure, but a structure with 16-byte alignment, for example, is not itself 16-byte aligned in the parameter save area. Although this is messy, it has become the de facto standard used in building existing libraries. My initial varargs support followed the ABI language, but not the de facto standard. Running the GCC compatibility test suite exposed this issue, and indeed showed that LLVM didn't pass parameters self-consistently with my original logic. Removing the additional alignment logic allows the affected tests to now pass. I modified the ppc64-varargs-struct.c test case to remove the existing test for generation of alignment code, which is no longer appropriate. Built and tested on powerpc64-unknown-linux-gnu with no new regressions. llvm-svn: 166805
* Fix the CodeGen/ppc64-varargs-struct.c test case to tolerate release builds.Bill Schmidt2012-10-041-3/+3
| | | | llvm-svn: 165247
* Add a test case for r156143, which enabled general varargs support for theBill Schmidt2012-10-041-0/+32
64-bit PPC SVR4 ABI. The test verifies passing of structures, items with 16-byte alignment, and small items that are passed right-justified in the parameter save area slot. llvm-svn: 165245
OpenPOWER on IntegriCloud