Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | AArch64: fix weird edge case in ABI. | Tim Northover | 2017-05-05 | 1 | -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 |