summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-11-18 00:32:03 +0000
committerChris Lattner <sabre@nondot.org>2006-11-18 00:32:03 +0000
commit542dfd5510beb6e75b6dcd802222b26f4ec5f392 (patch)
tree25afdb3aef05e8b6eeb34ac38dcf3a4ec38cb29d /llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
parent33fc1d45e5c59395df97c06b1f0632eea62667b5 (diff)
downloadbcm5719-llvm-542dfd5510beb6e75b6dcd802222b26f4ec5f392.tar.gz
bcm5719-llvm-542dfd5510beb6e75b6dcd802222b26f4ec5f392.zip
Rewrite the branch selector to be correct in the face of large functions.
The algorithm it used before wasn't 100% correct, we now use an iterative expansion model. This fixes assembler errors when compiling 403.gcc with tail merging enabled. Change the way the branch selector works overall: Now, the isel generates PPC::BCC instructions (as it used to) directly, and these BCC instructions are emitted to the output or jitted directly if branches don't need expansion. Only if branches need expansion are instructions rewritten and created. This should make branch select faster, and eliminates the Bxx instructions from the .td file. llvm-svn: 31837
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud