diff options
author | Bill Wendling <isanbard@gmail.com> | 2013-11-27 19:40:05 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2013-11-27 19:40:05 +0000 |
commit | 8bb91f77cb1488c19cb4bdb17b4af5f093d233fd (patch) | |
tree | b222b5d88b7f03ce34a5123a62706c323d0026d7 | |
parent | f63e418d2c299a540ac27ddfed69b2c4698bb3c3 (diff) | |
download | external_llvm-8bb91f77cb1488c19cb4bdb17b4af5f093d233fd.zip external_llvm-8bb91f77cb1488c19cb4bdb17b4af5f093d233fd.tar.gz external_llvm-8bb91f77cb1488c19cb4bdb17b4af5f093d233fd.tar.bz2 |
Merging r195574:
------------------------------------------------------------------------
r195574 | venkatra | 2013-11-24 10:41:49 -0800 (Sun, 24 Nov 2013) | 2 lines
[SparcV9]: Do not emit .register directives for global registers that are clobbered by calls but not used in the function itself.
------------------------------------------------------------------------
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@195868 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/Sparc/SparcAsmPrinter.cpp | 2 | ||||
-rw-r--r-- | test/CodeGen/SPARC/64abi.ll | 2 |
2 files changed, 1 insertions, 3 deletions
diff --git a/lib/Target/Sparc/SparcAsmPrinter.cpp b/lib/Target/Sparc/SparcAsmPrinter.cpp index e56da1e..d06c894 100644 --- a/lib/Target/Sparc/SparcAsmPrinter.cpp +++ b/lib/Target/Sparc/SparcAsmPrinter.cpp @@ -88,7 +88,7 @@ void SparcAsmPrinter::EmitFunctionBodyStart() { const unsigned globalRegs[] = { SP::G2, SP::G3, SP::G6, SP::G7, 0 }; for (unsigned i = 0; globalRegs[i] != 0; ++i) { unsigned reg = globalRegs[i]; - if (!MRI.isPhysRegUsed(reg)) + if (MRI.use_empty(reg)) continue; EmitGlobalRegisterDecl(reg); } diff --git a/test/CodeGen/SPARC/64abi.ll b/test/CodeGen/SPARC/64abi.ll index 00fb99a..8a5c996 100644 --- a/test/CodeGen/SPARC/64abi.ll +++ b/test/CodeGen/SPARC/64abi.ll @@ -380,8 +380,6 @@ define signext i32 @ret_nozext(i32 signext %a0) { ; CHECK-LABEL: test_register_directive ; CHECK: .register %g2, #scratch ; CHECK: .register %g3, #scratch -; CHECK: .register %g6, #ignore -; CHECK: .register %g7, #ignore ; CHECK: add %i0, 2, %g2 ; CHECK: add %i0, 3, %g3 define i32 @test_register_directive(i32 %i0) { |