Subject: discouraging the compiler from re-reading *pc in the peephole loop, part2 (any diff?)

From: mig <mig>
Date: Sat, 12 Jan 2013 10:53:23 +0000

---
 generic/tclExecute.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 5bf0e79..628dfe7 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -2315,16 +2315,12 @@ TEBCresume(
     
     if (inst == INST_LOAD_SCALAR1) {
 	goto instLoadScalar1;
-    }
-
-    if (inst == INST_PUSH1) {
+    } else if (inst == INST_PUSH1) {
 	PUSH_OBJECT(codePtr->objArrayPtr[TclGetUInt1AtPtr(pc+1)]);
 	TRACE_WITH_OBJ(("%u => ", TclGetInt1AtPtr(pc+1)), OBJ_AT_TOS);
 	inst = *(pc += 2);
 	goto peepholeStart;
-    }
-
-    if (inst == INST_START_CMD) {
+    } else if (inst == INST_START_CMD) {
 	/*
 	 * Peephole: do not run INST_START_CMD, just skip it
 	 */
-- 
cgit v0.12