summaryrefslogtreecommitdiff
path: root/rts/Exception.cmm
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2009-10-14 13:17:27 +0000
committerSimon Marlow <marlowsd@gmail.com>2009-10-14 13:17:27 +0000
commit0856ac59cfb455d32a3042317fdba0f5e85cab9c (patch)
treee744d0c909780dabeffa65babfb9c4535f9a4d0a /rts/Exception.cmm
parentc5f93af1c663ab68f3b18f6a8c3264165a1c8883 (diff)
downloadhaskell-0856ac59cfb455d32a3042317fdba0f5e85cab9c.tar.gz
micro-opt: replace stmGetEnclosingTRec() with a field access
While fixing #3578 I noticed that this function was just a field access to StgTRecHeader, so I inlined it manually.
Diffstat (limited to 'rts/Exception.cmm')
-rw-r--r--rts/Exception.cmm4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/Exception.cmm b/rts/Exception.cmm
index cd3f2bc4b8..6c887c22dc 100644
--- a/rts/Exception.cmm
+++ b/rts/Exception.cmm
@@ -398,7 +398,7 @@ retry_pop_stack:
W_ r;
trec = StgTSO_trec(CurrentTSO);
(r) = foreign "C" stmValidateNestOfTransactions(trec "ptr") [];
- ("ptr" outer) = foreign "C" stmGetEnclosingTRec(trec "ptr") [];
+ outer = StgTRecHeader_enclosing_trec(trec);
foreign "C" stmAbortTransaction(MyCapability() "ptr", trec "ptr") [];
foreign "C" stmFreeAbortedTRec(MyCapability() "ptr", trec "ptr") [];
@@ -498,7 +498,7 @@ retry_pop_stack:
} else {
W_ trec, outer;
trec = StgTSO_trec(CurrentTSO);
- ("ptr" outer) = foreign "C" stmGetEnclosingTRec(trec "ptr") [];
+ outer = StgTRecHeader_enclosing_trec(trec);
foreign "C" stmAbortTransaction(MyCapability() "ptr", trec "ptr") [];
foreign "C" stmFreeAbortedTRec(MyCapability() "ptr", trec "ptr") [];
StgTSO_trec(CurrentTSO) = outer;