summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/x86_32-arguments-darwin.c
Commit message (Collapse)AuthorAgeFilesLines
* IR: print value numbers for unnamed function argumentsTim Northover2019-08-031-8/+8
| | | | | | | | | | For consistency with normal instructions and clarity when reading IR, it's best to print the %0, %1, ... names of function arguments in definitions. Also modifies the parser to accept IR in that form for obvious reasons. llvm-svn: 367755
* LLVM IR: Generate new-style byval-with-Type from ClangTim Northover2019-06-051-23/+23
| | | | | | | | | | | LLVM IR recently added a Type parameter to the byval Attribute, so that when pointers become opaque and no longer have an element type the information will still be present in IR. For now the Type parameter is optional (which is why Clang didn't need this change at the time), but it will become mandatory soon. llvm-svn: 362652
* [opaque pointer types] Explicit non-pointer type for call expressionsDavid Blaikie2015-04-161-1/+1
| | | | | | (migration for recent LLVM change to textual IR for calls) llvm-svn: 235147
* CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin2013-08-151-51/+51
| | | | | | tests fail. llvm-svn: 188447
* IR-gen should not generate an MMX types unless the code is explicitly using MMXChad Rosier2013-03-251-2/+2
| | | | | | | intrinsics. rdar://13213542 llvm-svn: 177911
* Update testcases due to Attribute sorting improvements.Bill Wendling2013-02-151-23/+23
| | | | llvm-svn: 175253
* Update the tests.Bill Wendling2013-01-311-32/+32
| | | | | | | This update coincides with r174110. That change ordered the attributes alphabetically. llvm-svn: 174111
* Modify the tests for the (sorted) order that the attributes come out as now.Bill Wendling2013-01-291-9/+9
| | | | llvm-svn: 173762
* Fix a small calling-convention bug for x86-32. PR14453.Eli Friedman2012-11-291-0/+5
| | | | llvm-svn: 168959
* Fix a bug with va_arg and vectors on Darwin x86-32. <rdar://problem/11592208>.Eli Friedman2012-06-051-0/+13
| | | | llvm-svn: 158017
* Finish r144971, which was an incomplete commit.Eli Friedman2011-11-181-1/+1
| | | | llvm-svn: 144972
* Fix the meaning of an "empty" record for the case of a zero-length array. ↵Eli Friedman2011-11-181-0/+8
| | | | | | Use isEmptyRecord for arguments on x86-32; there are structs of size 0 which don't count as empty. llvm-svn: 144971
* A bunch of fixes to argument passing and va_arg on Darwin x86-32 for ↵Eli Friedman2011-11-181-0/+24
| | | | | | structures containing an SSE vector. llvm-svn: 144963
* Don't try to expand struct arguments containing holes on x86-32. From gcc ↵Eli Friedman2011-11-181-0/+4
| | | | | | struct layout tests. llvm-svn: 144961
* Simplify code for returning a struct for Darwin x86-32 ABI. Use a better ↵Eli Friedman2011-11-181-2/+6
| | | | | | type for a function returning a struct containing only a pointer. Handle the edge case of a struct containing only a float or double plus some dead padding instead of asserting. llvm-svn: 144960
* Ignore empty unions in argument lowering on x86-32. From gcc struct layout ↵Eli Friedman2011-11-181-0/+4
| | | | | | tests. llvm-svn: 144944
* Fix crash in calling convention code expanding an struct with a complex member.Eli Friedman2011-11-151-0/+5
| | | | llvm-svn: 144612
* Track whether an AggValueSlot is potentially aliased, and do notJohn McCall2011-08-251-9/+9
| | | | | | | | | | emit call results into potentially aliased slots. This allows us to properly mark indirect return slots as noalias, at the cost of requiring an extra memcpy when assigning an aggregate call result into a l-value. It also brings us into compliance with the x86-64 ABI. llvm-svn: 138599
* clang side to match the LLVM IR type system rewrite patch.Chris Lattner2011-07-091-2/+2
| | | | llvm-svn: 134831
* Change -mno-mmx to be more compatible with gcc. Specifically, -mno-mmx ↵Eli Friedman2011-07-081-2/+1
| | | | | | | | | | | | should not imply -mno-sse. Note that because we don't usually touch the MMX registers anyway, all -mno-mmx needs to do is tweak the x86-32 calling convention a little for vectors that look like MMX vectors, and prevent the definition of __MMX__. clang doesn't actually stop the user from using MMX inline asm operands or MMX builtins in -mno-mmx mode; as a QOI issue, it would be nice to diagnose, but I doubt it really matters much. <rdar://problem/9694837> llvm-svn: 134770
* make the x86-32 backend specify a byval alignment, even when theChris Lattner2011-05-221-3/+3
| | | | | | | code generator will do it. With this patch, clang compiles the example in PR9794 to not have an alloca temporary. llvm-svn: 131881
* Reapply r116684 with fixes. The test cases needed to be updated.Bill Wendling2010-10-181-2/+2
| | | | llvm-svn: 116696
* IRgen/ABI/x86-32: Realign indirect arguments when the ABI requires us to passDaniel Dunbar2010-09-161-10/+10
| | | | | | them with a smaller alignment than the rest of codegen expects. llvm-svn: 114115
* IRgen/ABI/x86_32/Darwin: On Darwin, only structures with SSE vector types ↵Daniel Dunbar2010-09-161-0/+278
get passed with a non-default-stack-ABI-alignment (of 16). - This fixes the ABI convenient, but breaks codegen since we now have underaligned arguments. Marginal improvement overall though, and will be fixed in next commit. llvm-svn: 114113
OpenPOWER on IntegriCloud