|
From: Paul K. <pk...@us...> - 2011-06-23 15:07:47
|
The branch "master" has been updated in SBCL:
via ce118eb9bca784396335f6f10d59219362545afa (commit)
from 6596b18b95780986ff4eb511ab384da138adbb58 (commit)
- Log -----------------------------------------------------------------
commit ce118eb9bca784396335f6f10d59219362545afa
Author: Paul Khuong <pv...@pv...>
Date: Thu Jun 23 11:05:54 2011 -0400
Microoptimisation for block headers on x86-64
Only emit a jmp over the header if a predecessor falls through to
the current block, and it there is a trampoline. Otherwise, it's
not worth the cost of a branch to skip a few NOPs.
---
src/compiler/x86-64/call.lisp | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/compiler/x86-64/call.lisp b/src/compiler/x86-64/call.lisp
index b19771d..4071fb7 100644
--- a/src/compiler/x86-64/call.lisp
+++ b/src/compiler/x86-64/call.lisp
@@ -561,7 +561,7 @@
;;; calls. Emit a header for local calls to pop the return address
;;; in the right place.
(defun emit-block-header (start-label trampoline-label fall-thru-p alignp)
- (when (and fall-thru-p (or trampoline-label alignp))
+ (when (and fall-thru-p trampoline-label)
(inst jmp start-label))
(when alignp
(emit-alignment n-lowtag-bits #x90))
-----------------------------------------------------------------------
hooks/post-receive
--
SBCL
|