]> git.lizzy.rs Git - rust.git/commit
Fix C aggregate-passing ABI on powerpc
authorSamuel Holland <samuel@sholland.org>
Thu, 5 Sep 2019 01:40:18 +0000 (20:40 -0500)
committerSamuel Holland <samuel@sholland.org>
Wed, 6 Nov 2019 02:23:58 +0000 (20:23 -0600)
commite648aa8e89f4d30dd1e7242de0ce1fd660bfd422
tree797ed9c1638a7c31e51019506a06e25e5b98d6a2
parent1423bec54cf2db283b614e527cfd602b481485d1
Fix C aggregate-passing ABI on powerpc

The existing code (which looks like it was copied from MIPS) passes
aggregates by value in registers. This is wrong. According to the SVR4
powerpc psABI, all aggregates are passed indirectly.

See #64259 for more discussion, which addresses the ABI for the special
case of ZSTs (empty structs).
src/librustc_target/abi/call/mod.rs
src/librustc_target/abi/call/powerpc.rs