aboutsummaryrefslogtreecommitdiff
path: root/gcc/go
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2020-12-22 09:47:22 +0100
committerIain Buclaw <ibuclaw@gdcproject.org>2020-12-23 17:32:52 +0100
commitfeb3c40c8ee043cc893410c9985926439292caee (patch)
treef01493c8c69af1fc5536d5b08c1b3f38d052e874 /gcc/go
parent16929214fd139c9d092f9bfbd9d8287d5903f593 (diff)
downloadgcc-feb3c40c8ee043cc893410c9985926439292caee.zip
gcc-feb3c40c8ee043cc893410c9985926439292caee.tar.gz
gcc-feb3c40c8ee043cc893410c9985926439292caee.tar.bz2
d: Force TYPE_MODE of classes and non-POD structs as BLKmode
Without this being forced, the optimizer could still make decisions that require objects of the non-POD types to need a temporary, which would result in an ICE during the expand to RTL passes. gcc/d/ChangeLog: PR d/98427 * types.cc (TypeVisitor::visit (TypeStruct *)): Set TYPE_MODE of all non-trivial types as BLKmode. (TypeVisitor::visit (TypeClass *)): Likewise. gcc/testsuite/ChangeLog: PR d/98427 * gdc.dg/pr98427.d: New test.
Diffstat (limited to 'gcc/go')
0 files changed, 0 insertions, 0 deletions