Branch: Tag:

2019-09-15

2019-09-15 14:07:21 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Optimizer: Added some peep-hole rules for F_SWAP_STACK_LOCAL.

29:   ASSIGN_LOCAL POP_VALUE : ASSIGN_LOCAL_AND_POP($1a)   RECUR POP_VALUE : RECUR_AND_POP($1a)    + // Atomic getting a value and replacing it with another. + LOCAL UNDEFINED ASSIGN_LOCAL_AND_POP($1a) : UNDEFINED SWAP_STACK_LOCAL($1a) + LOCAL ASSIGN_LOCAL_NUMBER_AND_POP($1a) : NUMBER($2b) SWAP_STACK_LOCAL($1a) + LOCAL LOCAL ASSIGN_LOCAL_AND_POP($1a) : LOCAL($2a) SWAP_STACK_LOCAL($1a) + LOCAL GLOBAL ASSIGN_LOCAL_AND_POP($1a) : GLOBAL($2a) SWAP_STACK_LOCAL($1a) +    // Negation and complement of constants.   NUMBER(0) : CONST0   NUMBER(1) : CONST1