aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms/Utils/SimplifyCFG.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-12-03 05:21:24 +0000
committerDan Gohman <gohman@apple.com>2008-12-03 05:21:24 +0000
commit37eb6c8e881cc35415c4d5cecd579b21ed7fc26f (patch)
tree40550321fe3caaaa7a081dc7d7ce4faa4339e234 /lib/Transforms/Utils/SimplifyCFG.cpp
parent93bc14cdd7a55a1d236a436a3cb99863626b0d11 (diff)
downloadexternal_llvm-37eb6c8e881cc35415c4d5cecd579b21ed7fc26f.zip
external_llvm-37eb6c8e881cc35415c4d5cecd579b21ed7fc26f.tar.gz
external_llvm-37eb6c8e881cc35415c4d5cecd579b21ed7fc26f.tar.bz2
Mark x86's V_SET0 and V_SETALLONES with isSimpleLoad, and teach X86's
foldMemoryOperand how to "fold" them, by converting them into constant-pool loads. When they aren't folded, they use xorps/cmpeqd, but for example when register pressure is high, they may now be folded as memory operands, which reduces register pressure. Also, mark V_SET0 isAsCheapAsAMove so that two-address-elimination will remat it instead of copying zeros around (V_SETALLONES was already marked). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60461 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/SimplifyCFG.cpp')
0 files changed, 0 insertions, 0 deletions