aboutsummaryrefslogtreecommitdiff
path: root/lldb/scripts/Python
diff options
context:
space:
mode:
authorQuentin Colombet <qcolombet@apple.com>2013-09-25 00:26:17 +0000
committerQuentin Colombet <qcolombet@apple.com>2013-09-25 00:26:17 +0000
commitfa403ab3fb8fa78c516bdd6a5c3e4583f70eb261 (patch)
treebded4343e15b757727911bd20dbdb4ee6f5d297a /lldb/scripts/Python
parentd24698c8ef5158a7a53c761ba27ef29759284710 (diff)
downloadllvm-fa403ab3fb8fa78c516bdd6a5c3e4583f70eb261.zip
llvm-fa403ab3fb8fa78c516bdd6a5c3e4583f70eb261.tar.gz
llvm-fa403ab3fb8fa78c516bdd6a5c3e4583f70eb261.tar.bz2
[PR16882] Ignore noreturn definitions when setting isPhysRegUsed.
PEI inserts a save/restore sequence for the link register, according to the information it gets from the MachineRegisterInfo. MachineRegisterInfo is populated by the VirtRegMap pass. This pass was not aware of noreturn calls and was registering the definitions of these calls the same way as regular operations. Modify VirtRegPass so that it does not set the isPhysRegUsed information for registers only defined by noreturn calls. The rational is that a noreturn call is the "last instruction" of the program (if it returns the behavior is undefined), so everything that is defined by it cannot be used and will not interfere with anything else. Therefore, it is pointless to account for then. llvm-svn: 191349
Diffstat (limited to 'lldb/scripts/Python')
0 files changed, 0 insertions, 0 deletions