diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-04-13 23:34:15 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-04-13 23:34:15 +0000 |
commit | ecdb41ebc30e781ccbd3d89674caebc4fd35f023 (patch) | |
tree | f002fa3d9fff6a0caf1a3426d2c08e0985ad699f /lib/Rewrite/HTMLRewrite.cpp | |
parent | 21c0160959961b3a6ab3308608ee3fde182ecb49 (diff) |
IRgen: Move EmitLoadOfBitfieldLValue to use new CGBitfieldInfo::AccessInfo decomposition, instead of computing the access policy itself.
- This lets the method focus slightly more on emitting clean IR to honor the policy which has been selected. On 403.gcc's combine.c, x86_64, -O0, this reduces the number of lines in the .ll file (~= # of instructions) by 2.5%.
- No intended functionality change -- at -O3 this should produce equivalent if not identical output. On 403.gcc's combine.c, x86_64, -O3, this isn't quite true and some of the changes are regressions, but I'm not going to worry about that until we move to a new access policy.
- There is still some room for improvement in the generated IR, in particular we can usually fold the sign-extension of the bit-field into one of the component access. See the FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101192 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Rewrite/HTMLRewrite.cpp')
0 files changed, 0 insertions, 0 deletions