diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-10-14 13:17:27 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-10-14 13:17:27 +0000 |
commit | 0856ac59cfb455d32a3042317fdba0f5e85cab9c (patch) | |
tree | e744d0c909780dabeffa65babfb9c4535f9a4d0a /rts/Exception.cmm | |
parent | c5f93af1c663ab68f3b18f6a8c3264165a1c8883 (diff) | |
download | haskell-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.cmm | 4 |
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; |