-

   rss_rss_hh_new

 - e-mail

 

 -

 LiveInternet.ru:
: 17.03.2011
:
:
: 51

:


,

, 08 2018 . 18:30 +
, ( ) [31a078bec7]:
   	/*
-	 * Select the list item based on the index. Negative operand means
-	 * end-based indexing (-2, ...), and -1 means out of range.
+	 * Decode end-offset index values.
   	 */
-	if (opnd < -1) {
-	    index = opnd+1 + objc;
-	} else {
-	    index = opnd;
-	}
+	index = opnd + (opnd <= TCL_INDEX_END)*(objc - 1 - TCL_INDEX_END);
   	pcAdjustment = 5;

( TCL_INDEX_END (-2)).
( int):
index = opnd + cmp(opnd, (-2))==>(0 | 1) * (objc - 1 - (-2));

. . .
, .

, (TEBCresume), - (JIT TCL). ( 6 + ) , `goto`, , / NRE (nonrecursive evaluation) .. ..
.. , (.. )

, , , - -, , . jump if if/else, , .

, , .
...

https://habrahabr.ru/post/350742/

:  

: [1] []
 

:
: 

: ( )

:

  URL