summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaTemplateInstantiate.cpp
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-09-03 20:58:42 +0000
committerBob Wilson <bob.wilson@apple.com>2009-09-03 20:58:42 +0000
commit5c7d9ca53d52c0c7b5280f398c5efa65f715aff7 (patch)
tree86886edcea528bcb08599323168c31837830a26f /clang/lib/Sema/SemaTemplateInstantiate.cpp
parentc7b06b3edfa1685cdca3f1db149c42bd58c4234c (diff)
downloadbcm5719-llvm-5c7d9ca53d52c0c7b5280f398c5efa65f715aff7.tar.gz
bcm5719-llvm-5c7d9ca53d52c0c7b5280f398c5efa65f715aff7.zip
Overhaul the TwoAddressInstructionPass to simplify the logic, especially
for the complicated case where one register is tied to multiple destinations. This avoids the extra scan of instruction operands that was introduced by my recent change. I also pulled some code out into a separate TryInstructionTransform method, added more comments, and renamed some variables. Besides all those changes, this takes care of a FIXME in the code regarding an assumption about there being a single tied use of a register when converting to a 3-address form. I'm not aware of cases where that assumption is violated, but the code now only attempts to transform an instruction, either by commuting its operands or by converting to a 3-address form, for the simple case where there is a single pair of tied operands. llvm-svn: 80945
Diffstat (limited to 'clang/lib/Sema/SemaTemplateInstantiate.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud