summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/aarch64-args.cpp
Commit message (Collapse)AuthorAgeFilesLines
* AArch64: fix weird edge case in ABI.Tim Northover2017-05-051-0/+67
It turns out there are some sort-of-but-not-quite empty structs that break all the rules. For example: struct SuperEmpty { int arr[0]; }; struct SortOfEmpty { struct SuperEmpty e; }; Both of these have sizeof == 0, even in C++ mode, for GCC compatibility. The first one also doesn't occupy a register when passed by value in GNU C++ mode, unlike everything else. On Darwin, we want to ignore the lot (and especially don't want to try to use an i0 as we were). llvm-svn: 302313
OpenPOWER on IntegriCloud