HomePhabricator

CodeGen: Fix PR40605 by splitting constant struct initializers

Description

CodeGen: Fix PR40605 by splitting constant struct initializers

When emitting initializers for local structures for code built with
-ftrivial-auto-var-init, replace constant structures with sequences of
stores.

This appears to greatly help removing dead initialization stores to those
locals that are later overwritten by other data.
This also removes a lot of .rodata constants (see PR40605), replacing most
of them with immediate values (for Linux kernel the .rodata size is
reduced by ~1.9%)

Details

Committed
gliderMar 1 2019, 1:00 AM
Parents
rL355180: [sanitizers] Explicitly use GetModuleFileNameW with wchar_t
Branches
Unknown
Tags
Unknown