Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(335)

Unified Diff: lib/Target/ARM/ARMISelLowering.cpp

Issue 1154253004: Use R0/R1 instead of R4/R5 for ARM eh_return return values (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-llvm.git@master
Patch Set: review Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « lib/Target/ARM/ARMFrameLowering.cpp ('k') | test/CodeGen/ARM/ehreturn.ll » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lib/Target/ARM/ARMISelLowering.cpp
diff --git a/lib/Target/ARM/ARMISelLowering.cpp b/lib/Target/ARM/ARMISelLowering.cpp
index 3e402d7a1c8e786381654e480b3d3385956c9eb5..c516b42344df09c646939d1f12af2eafba038218 100644
--- a/lib/Target/ARM/ARMISelLowering.cpp
+++ b/lib/Target/ARM/ARMISelLowering.cpp
@@ -765,23 +765,16 @@ ARMTargetLowering::ARMTargetLowering(const TargetMachine &TM,
if (!Subtarget->isTargetMachO()) {
// Non-MachO platforms may return values in these registers via the
// personality function.
- // @LOCALMOD-START
- if (Subtarget->isTargetNaCl()) {
- // we use the first caller saved regs here
- // c.f.: llvm-gcc/llvm-gcc-4.2/gcc/unwind-dw2.c::uw_install_context
- // NOTE: these are related to the _Unwind_PNaClSetResult{0,1} functions
- setExceptionPointerRegister(ARM::R4);
- setExceptionSelectorRegister(ARM::R5);
-
- setOperationAction(ISD::FRAME_TO_ARGS_OFFSET, MVT::i32, Custom);
+ setExceptionPointerRegister(ARM::R0);
+ setExceptionSelectorRegister(ARM::R1);
+ }
- setOperationAction(ISD::EH_RETURN, MVT::Other, Custom);
- } else {
- setExceptionPointerRegister(ARM::R0);
- setExceptionSelectorRegister(ARM::R1);
- }
- // @LOCALMOD-END
+ // @LOCALMOD-START
+ if (Subtarget->isTargetNaCl()) {
+ setOperationAction(ISD::FRAME_TO_ARGS_OFFSET, MVT::i32, Custom);
+ setOperationAction(ISD::EH_RETURN, MVT::Other, Custom);
}
+ // @LOCALMOD-END
if (Subtarget->getTargetTriple().isWindowsItaniumEnvironment())
setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32, Custom);
« no previous file with comments | « lib/Target/ARM/ARMFrameLowering.cpp ('k') | test/CodeGen/ARM/ehreturn.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698