comparison lwasm/pass4.c @ 366:84dc6d2ec6ba

Added some more expression reductions
author lost@starbug
date Wed, 14 Apr 2010 21:02:53 -0600
parents 6a98cc90c14f
children 9c24d9d485b9
comparison
equal deleted inserted replaced
365:6a98cc90c14f 366:84dc6d2ec6ba
53 sl = as -> line_head; 53 sl = as -> line_head;
54 while (cnt > 0) 54 while (cnt > 0)
55 { 55 {
56 // find an unresolved instruction 56 // find an unresolved instruction
57 for ( ; sl && sl -> len != -1; sl = sl -> next) 57 for ( ; sl && sl -> len != -1; sl = sl -> next)
58 /* do nothing */ ; 58 {
59 as -> cl = sl;
60 lwasm_reduce_expr(as, sl -> addr);
59 61
62 // simplify each expression
63 for (le = sl -> exprs; le; le = le -> next)
64 lwasm_reduce_expr(as, le -> expr);
65 }
66
60 // simplify address 67 // simplify address
61 as -> cl = sl; 68 as -> cl = sl;
62 lwasm_reduce_expr(as, sl -> addr); 69 lwasm_reduce_expr(as, sl -> addr);
63 70
64 // simplify each expression 71 // simplify each expression