[back]
0 start -> expr
1 expr -> expr assign-op (^!)15 expr (>!)14
2 expr -> expr or-op (^!)13 expr (>!)12
3 expr -> expr and-op (^!)11 expr (>!)10
4 expr -> expr eq-op (^!)9 expr (>!)8
5 expr -> expr rel-op (^!)7 expr (>!)6
6 expr -> expr shift-op (^!)5 expr (>!)4
7 expr -> expr add-op (^!)3 expr >>!!
8 expr -> expr mul-op ^! expr
9 expr -> unary-op expr
10 expr -> IDENT
11 expr -> NUMBER
12 expr -> LPAREN expr RPAREN
13 assign-op -> ASSIGN
14 or-op -> OR
15 and-op -> AND
16 eq-op -> EQ
17 eq-op -> NE
18 rel-op -> LT
19 rel-op -> GT
20 rel-op -> LE
21 rel-op -> GE
22 shift-op -> LSHIFT
23 shift-op -> RSHIFT
24 add-op -> PLUS
25 add-op -> MINUS
26 mul-op -> TIMES
27 mul-op -> DIVIDE
28 unary-op -> PLUS
29 unary-op -> MINUS
0
-----
start ->.expr
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 6
unary-op - GOTO 7
1
-----
expr -> IDENT. (10)
* - REDUCE 10 expr
2
-----
expr -> NUMBER. (11)
* - REDUCE 11 expr
3
-----
expr -> LPAREN.expr RPAREN
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 8
unary-op - GOTO 7
4
-----
unary-op -> PLUS. (28)
* - REDUCE 28 unary-op
5
-----
unary-op -> MINUS. (29)
* - REDUCE 29 unary-op
6
-----
start -> expr. (0)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
EOT - DONE 0
ASSIGN - SHIFT 9
OR - SHIFT 10
AND - SHIFT 11
EQ - SHIFT 12
NE - SHIFT 13
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
7
-----
expr -> unary-op.expr
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 32
unary-op - GOTO 7
8
-----
expr -> LPAREN expr.RPAREN
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
RPAREN - SHIFT 33
ASSIGN - SHIFT 9
OR - SHIFT 10
AND - SHIFT 11
EQ - SHIFT 12
NE - SHIFT 13
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
9
-----
assign-op -> ASSIGN. (13)
* - REDUCE 13 assign-op
10
-----
or-op -> OR. (14)
* - REDUCE 14 or-op
11
-----
and-op -> AND. (15)
* - REDUCE 15 and-op
12
-----
eq-op -> EQ. (16)
* - REDUCE 16 eq-op
13
-----
eq-op -> NE. (17)
* - REDUCE 17 eq-op
14
-----
rel-op -> LT. (18)
* - REDUCE 18 rel-op
15
-----
rel-op -> GT. (19)
* - REDUCE 19 rel-op
16
-----
rel-op -> LE. (20)
* - REDUCE 20 rel-op
17
-----
rel-op -> GE. (21)
* - REDUCE 21 rel-op
18
-----
shift-op -> LSHIFT. (22)
* - REDUCE 22 shift-op
19
-----
shift-op -> RSHIFT. (23)
* - REDUCE 23 shift-op
20
-----
add-op -> PLUS. (24)
* - REDUCE 24 add-op
21
-----
add-op -> MINUS. (25)
* - REDUCE 25 add-op
22
-----
mul-op -> TIMES. (26)
* - REDUCE 26 mul-op
23
-----
mul-op -> DIVIDE. (27)
* - REDUCE 27 mul-op
24
-----
expr -> expr assign-op (^!)15.expr (>!)14
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 34
unary-op - GOTO 7
25
-----
expr -> expr or-op (^!)13.expr (>!)12
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 35
unary-op - GOTO 7
26
-----
expr -> expr and-op (^!)11.expr (>!)10
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 36
unary-op - GOTO 7
27
-----
expr -> expr eq-op (^!)9.expr (>!)8
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 37
unary-op - GOTO 7
28
-----
expr -> expr rel-op (^!)7.expr (>!)6
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 38
unary-op - GOTO 7
29
-----
expr -> expr shift-op (^!)5.expr (>!)4
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 39
unary-op - GOTO 7
30
-----
expr -> expr add-op (^!)3.expr >>!!
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 40
unary-op - GOTO 7
31
-----
expr -> expr mul-op ^!.expr
IDENT - SHIFT 1
NUMBER - SHIFT 2
LPAREN - SHIFT 3
PLUS - SHIFT 4
MINUS - SHIFT 5
expr - GOTO 41
unary-op - GOTO 7
32
-----
expr -> unary-op expr. (9)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
* - REDUCE 9 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
33
-----
expr -> LPAREN expr RPAREN. (12)
* - REDUCE 12 expr
34
-----
expr -> expr assign-op (^!)15 expr (>!)14. (1)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
OR - SHIFT 10
AND - SHIFT 11
EQ - SHIFT 12
NE - SHIFT 13
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 1 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
35
-----
expr -> expr or-op (^!)13 expr (>!)12. (2)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
AND - SHIFT 11
EQ - SHIFT 12
NE - SHIFT 13
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 2 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
36
-----
expr -> expr and-op (^!)11 expr (>!)10. (3)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
EQ - SHIFT 12
NE - SHIFT 13
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 3 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
37
-----
expr -> expr eq-op (^!)9 expr (>!)8. (4)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
LT - SHIFT 14
GT - SHIFT 15
LE - SHIFT 16
GE - SHIFT 17
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 4 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
38
-----
expr -> expr rel-op (^!)7 expr (>!)6. (5)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
LSHIFT - SHIFT 18
RSHIFT - SHIFT 19
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 5 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
39
-----
expr -> expr shift-op (^!)5 expr (>!)4. (6)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
PLUS - SHIFT 20
MINUS - SHIFT 21
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 6 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
40
-----
expr -> expr add-op (^!)3 expr >>!!. (7)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
TIMES - SHIFT 22
DIVIDE - SHIFT 23
* - REDUCE 7 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
41
-----
expr -> expr mul-op ^! expr. (8)
expr -> expr.assign-op (^!)15 expr (>!)14
expr -> expr.or-op (^!)13 expr (>!)12
expr -> expr.and-op (^!)11 expr (>!)10
expr -> expr.eq-op (^!)9 expr (>!)8
expr -> expr.rel-op (^!)7 expr (>!)6
expr -> expr.shift-op (^!)5 expr (>!)4
expr -> expr.add-op (^!)3 expr >>!!
expr -> expr.mul-op ^! expr
* - REDUCE 8 expr
assign-op - GOTO 24
or-op - GOTO 25
and-op - GOTO 26
eq-op - GOTO 27
rel-op - GOTO 28
shift-op - GOTO 29
add-op - GOTO 30
mul-op - GOTO 31
[back]