Back
MASM : PRAGMAS : PRAGMA_STK_LEVEL
PRAGMA_STK_LEVEL:

Syntax:

  • PRAGMA_STK_LEVEL n
Description:

The stack level pragma forces the shaker's book-keeping of the stack level to the value of n. This pragma can be used to force conditioning (if set to a non-zero value) or to release conditioning (if set to 0) of the subsequent instructions.

Microcode Pattern:

Takes 0 cycles to execute.
    Example: PRAGMA_STK_LEVEL 0 (Microcode for example below)

	  
DISP    STKC FLW IOC AGU ASEL BS5 P5 BS4 C4 P4  MPC  BS3 C3 P3 P2 P1 P0
-----------------------------------------------------------------------
ffffffff  -   -  A2RF E    -   0  00  0   0 00  IXOR  0   0 00 00 0b 0a
00000000  -   -    -  -    -   0  00  3   0 aa    -   0   0 00 00 00 00
00000000  -   -    -  -    -   0  00  0   0 00    -   0   0 00 00 00 00
00000000  -   -    -  -    -   0  00  0   0 00    -   3   0 ff 00 00 00
00000000 PEQ  -    -  -    -   0  00  0   0 00    -   0   0 00 00 00 00

	  
Exceptions :

None

Example :

IPUSHEQ 255 3 0xa 0xb     !! New stack level: 1
PRAGMA_STK_LEVEL 0        !! New stack level: 0
AGU_ED ZERO 0xffffffff
ATR 0xaa 3                !! Port 4 is unconditioned (see C4 in the 
                          !! micro-code above)

APE Group Zeuthen. 2003
$Id: pragma_stk_level_masm.php,v 1.2 2004/08/04 09:44:12 noe Exp $
$Id: syntax.php,v 1.8 2004/08/04 09:25:34 noe Exp $