ioef/lcc/sparc/solaris/tst/yacc.sbk
2005-08-28 17:54:51 +00:00

2247 lines
28 KiB
Text

.section ".data"
.global yyin
.type yyin,#object
.size yyin,4
.align 4
yyin:
.word __iob
.global yyout
.type yyout,#object
.size yyout,4
.align 4
yyout:
.word __iob+16
.global yylex
.section ".text"
.align 4
yylex:
save %sp,-96,%sp
ba .L5; nop
.L4:
.L7:
cmp %i5,-1; bl .L8; nop
cmp %i5,4; bg .L8; nop
sll %i5,2,%i4
set .L19+4,%i3
ld [%i4+%i3],%i4
jmp %i4; nop
.section ".rodata"
.align 4
.L19:
.word .L9
.word .L10
.word .L13
.word .L14
.word .L9
.word .L16
.section ".text"
.L10:
call yywrap; nop
cmp %o0,0; be .L9; nop
mov %g0,%i0
ba .L3; nop
.L13:
set 257,%i0
ba .L3; nop
.L14:
set 258,%i0
ba .L3; nop
.L16:
set yytext,%i4
ldsb [%i4],%i0
ba .L3; nop
.L8:
set yyout,%i4
ld [%i4],%o0
set .L18,%o1
mov %i5,%o2
call fprintf; nop
.L9:
.L5:
call yylook; nop
mov %o0,%i5
cmp %o0,0; bge .L4; nop
mov %g0,%i0
.L3:
ret; restore
.type yylex,#function
.size yylex,.-yylex
.section ".data"
.global yyvstop
.type yyvstop,#object
.align 4
yyvstop:
.word 0x0
.word 0x4
.word 0x0
.word 0x3
.word 0x4
.word 0x0
.word 0x2
.word 0x4
.word 0x0
.word 0x1
.word 0x4
.word 0x0
.word 0x2
.word 0x0
.word 0x1
.word 0x0
.word 0x0
.size yyvstop,68
.global yycrank
.type yycrank,#object
.align 1
yycrank:
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x1
.byte 0x3
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x1
.byte 0x4
.byte 0x1
.byte 0x3
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x1
.byte 0x5
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x5
.byte 0x7
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x1
.byte 0x6
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x6
.byte 0x8
.byte 0x0
.byte 0x0
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x6
.byte 0x8
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.byte 0x0
.size yycrank,290
.global yysvec
.type yysvec,#object
.align 4
yysvec:
.word 0x0
.word 0x0
.word 0x0
.word yycrank-2
.word 0x0
.word 0x0
.word yycrank
.word yysvec+12
.word 0x0
.word yycrank
.word 0x0
.word yyvstop+4
.word yycrank
.word 0x0
.word yyvstop+12
.word yycrank+4
.word 0x0
.word yyvstop+24
.word yycrank+38
.word 0x0
.word yyvstop+36
.word yycrank
.word yysvec+60
.word yyvstop+48
.word yycrank
.word yysvec+72
.word yyvstop+56
.word 0x0
.word 0x0
.word 0x0
.size yysvec,120
.global yytop
.type yytop,#object
.size yytop,4
.align 4
yytop:
.word yycrank+282
.global yybgin
.type yybgin,#object
.size yybgin,4
.align 4
yybgin:
.word yysvec+12
.global yymatch
.type yymatch,#object
.align 1
yymatch:
.byte 0
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 9
.byte 10
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 9
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 48
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 1
.byte 1
.byte 1
.byte 1
.byte 65
.byte 1
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 65
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 0
.size yymatch,129
.global yyextra
.type yyextra,#object
.align 1
yyextra:
.byte 0
.byte 0
.byte 0
.byte 0
.byte 0
.byte 0
.byte 0
.byte 0
.byte 0
.size yyextra,9
.global yylineno
.type yylineno,#object
.size yylineno,4
.align 4
yylineno:
.word 0x1
.global yysptr
.type yysptr,#object
.size yysptr,4
.align 4
yysptr:
.word yysbuf
.global yyprevious
.type yyprevious,#object
.size yyprevious,4
.align 4
yyprevious:
.word 0xa
.global yylook
.section ".text"
.align 4
yylook:
save %sp,-96,%sp
set yymorfg,%l6
ld [%l6],%l6
cmp %l6,0; bne .L36; nop
set yytext,%i2
ba .L37; nop
.L36:
set yymorfg,%l6
st %g0,[%l6]
set yyleng,%l6
ld [%l6],%l6
set yytext,%l5
add %l6,%l5,%i2
.L37:
.L38:
set yylstate,%i4
set yybgin,%l6
ld [%l6],%l6
mov %l6,%i5
set yyestate,%l5
st %l6,[%l5]
set yyprevious,%l6
ld [%l6],%l6
cmp %l6,10; bne .L42; nop
add %i5,12,%i5
.L42:
.L44:
ld [%i5],%i3
mov %i3,%l6
set yycrank,%l5
cmp %l6,%l5; bne .L48; nop
ld [%i5+4],%l7
mov %l7,%l6
cmp %l6,%g0; bne .L50; nop
ba .L95; nop
.L50:
ld [%l7],%l6
set yycrank,%l5
cmp %l6,%l5; bne .L52; nop
ba .L95; nop
.L52:
.L48:
mov %i2,%l3
add %l3,1,%i2
set yysptr,%l2
ld [%l2],%l2
set yysbuf,%l1
cmp %l2,%l1; bleu .L62; nop
set yysptr,%l2
ld [%l2],%l1
add %l1,-1,%l1
st %l1,[%l2]
ldsb [%l1],%l4
ba .L63; nop
.L62:
set yyin,%l2
ld [%l2],%l2
ld [%l2],%l1
sub %l1,1,%l1
st %l1,[%l2]
cmp %l1,0; bge .L64; nop
set yyin,%l2
ld [%l2],%o0
call __filbuf; nop
mov %o0,%l2
st %l2,[%fp+-4]
ba .L65; nop
.L64:
set yyin,%l2
ld [%l2],%l2
add %l2,4,%l2
ld [%l2],%l1
add %l1,1,%l0
st %l0,[%l2]
ldub [%l1],%l2
st %l2,[%fp+-4]
.L65:
ld [%fp+-4],%l4
.L63:
set yytchar,%l2
st %l4,[%l2]
cmp %l4,10; bne .L60; nop
set yylineno,%l2
ld [%l2],%l1
add %l1,1,%l1
st %l1,[%l2]
set yytchar,%l2
ld [%l2],%l5
ba .L61; nop
.L60:
set yytchar,%l2
ld [%l2],%l5
.L61:
cmp %l5,-1; bne .L58; nop
mov %g0,%l6
ba .L59; nop
.L58:
set yytchar,%l2
ld [%l2],%l6
.L59:
mov %l6,%i1
mov %l6,%l2
stb %l2,[%l3]
.L66:
mov %i3,%i0
mov %i3,%l3
set yycrank,%l2
cmp %l3,%l2; bleu .L67; nop
sll %i1,1,%l3
add %l3,%i0,%i3
mov %i3,%l3
set yytop,%l2
ld [%l2],%l2
cmp %l3,%l2; bgu .L68; nop
ldsb [%i3],%l3
smul %l3,12,%l3
set yysvec,%l2
add %l3,%l2,%l3
mov %i5,%l2
cmp %l3,%l2; bne .L68; nop
set yysvec,%l3
ldsb [%i3+1],%l2
smul %l2,12,%l2
add %l2,%l3,%l2
cmp %l2,%l3; bne .L71; nop
add %i2,-1,%l3
mov %l3,%i2
set yytchar,%l2
ldsb [%l3],%l3
st %l3,[%l2]
ld [%l2],%l3
cmp %l3,10; bne .L73; nop
set yylineno,%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
.L73:
set yysptr,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
set yytchar,%l3
ld [%l3],%l3
stb %l3,[%l2]
ba .L95; nop
.L71:
mov %i4,%l3
add %l3,4,%i4
ldsb [%i3+1],%l2
smul %l2,12,%l2
set yysvec,%l1
add %l2,%l1,%l2
mov %l2,%i5
st %l2,[%l3]
ba .L44; nop
.L67:
mov %i3,%l3
set yycrank,%l2
cmp %l3,%l2; bgeu .L76; nop
set yycrank,%l3
mov %l3,%l2
mov %i3,%l1
sub %l2,%l1,%l2
sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,2,%l2
sll %l2,1,%l2
add %l2,%l3,%l3
mov %l3,%i0
mov %l3,%i3
sll %i1,1,%l3
add %l3,%i3,%i3
mov %i3,%l3
set yytop,%l2
ld [%l2],%l2
cmp %l3,%l2; bgu .L78; nop
ldsb [%i3],%l3
smul %l3,12,%l3
set yysvec,%l2
add %l3,%l2,%l3
mov %i5,%l2
cmp %l3,%l2; bne .L78; nop
set yysvec,%l3
ldsb [%i3+1],%l2
smul %l2,12,%l2
add %l2,%l3,%l2
cmp %l2,%l3; bne .L80; nop
add %i2,-1,%l3
mov %l3,%i2
set yytchar,%l2
ldsb [%l3],%l3
st %l3,[%l2]
ld [%l2],%l3
cmp %l3,10; bne .L82; nop
set yylineno,%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
.L82:
set yysptr,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
set yytchar,%l3
ld [%l3],%l3
stb %l3,[%l2]
ba .L95; nop
.L80:
mov %i4,%l3
add %l3,4,%i4
ldsb [%i3+1],%l2
smul %l2,12,%l2
set yysvec,%l1
add %l2,%l1,%l2
mov %l2,%i5
st %l2,[%l3]
ba .L44; nop
.L78:
set yymatch,%l3
ldsb [%i1+%l3],%l3
sll %l3,1,%l3
add %l3,%i0,%i3
mov %i3,%l3
set yytop,%l2
ld [%l2],%l2
cmp %l3,%l2; bgu .L84; nop
ldsb [%i3],%l3
smul %l3,12,%l3
set yysvec,%l2
add %l3,%l2,%l3
mov %i5,%l2
cmp %l3,%l2; bne .L84; nop
set yysvec,%l3
ldsb [%i3+1],%l2
smul %l2,12,%l2
add %l2,%l3,%l2
cmp %l2,%l3; bne .L86; nop
add %i2,-1,%l3
mov %l3,%i2
set yytchar,%l2
ldsb [%l3],%l3
st %l3,[%l2]
ld [%l2],%l3
cmp %l3,10; bne .L88; nop
set yylineno,%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
.L88:
set yysptr,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
set yytchar,%l3
ld [%l3],%l3
stb %l3,[%l2]
ba .L95; nop
.L86:
mov %i4,%l3
add %l3,4,%i4
ldsb [%i3+1],%l2
smul %l2,12,%l2
set yysvec,%l1
add %l2,%l1,%l2
mov %l2,%i5
st %l2,[%l3]
ba .L44; nop
.L84:
.L76:
.L68:
ld [%i5+4],%l3
mov %l3,%i5
cmp %l3,%g0; be .L90; nop
ld [%i5],%l3
mov %l3,%i3
set yycrank,%l2
cmp %l3,%l2; be .L90; nop
ba .L66; nop
.L90:
add %i2,-1,%l3
mov %l3,%i2
set yytchar,%l2
ldsb [%l3],%l3
st %l3,[%l2]
ld [%l2],%l3
cmp %l3,10; bne .L92; nop
set yylineno,%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
.L92:
set yysptr,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
set yytchar,%l3
ld [%l3],%l3
stb %l3,[%l2]
ba .L95; nop
.L94:
mov %i2,%l6
add %l6,-1,%i2
stb %g0,[%l6]
ld [%i4],%l6
mov %l6,%l4
cmp %l4,%g0; be .L97; nop
set yyfnd,%l4
ld [%l6+8],%l6
st %l6,[%l4]
cmp %l6,%g0; be .L97; nop
ld [%l4],%l6
ld [%l6],%l6
cmp %l6,0; ble .L97; nop
set yyolsp,%l6
st %i4,[%l6]
set yyfnd,%l6
ld [%l6],%l6
ld [%l6],%l6
set yyextra,%l5
ldsb [%l6+%l5],%l6
cmp %l6,0; be .L99; nop
ba .L102; nop
.L101:
add %i4,-4,%i4
mov %i2,%l6
add %l6,-1,%i2
set yytchar,%l5
ldsb [%l6],%l6
st %l6,[%l5]
ld [%l5],%l6
cmp %l6,10; bne .L104; nop
set yylineno,%l6
ld [%l6],%l5
sub %l5,1,%l5
st %l5,[%l6]
.L104:
set yysptr,%l6
ld [%l6],%l5
add %l5,1,%l4
st %l4,[%l6]
set yytchar,%l6
ld [%l6],%l6
stb %l6,[%l5]
.L102:
ld [%i4],%l6
ld [%l6+8],%o0
set yyfnd,%l6
ld [%l6],%l6
ld [%l6],%l6
neg %l6,%o1
call yyback; nop
cmp %o0,1; be .L106; nop
mov %i4,%l6
set yylstate,%l5
cmp %l6,%l5; bgu .L101; nop
.L106:
.L99:
set yyprevious,%l6
ldsb [%i2],%l5
st %l5,[%l6]
set yylsp,%l6
st %i4,[%l6]
set yyleng,%l6
set yytext,%l5
mov %i2,%l4
mov %l5,%l3
sub %l4,%l3,%l4
add %l4,1,%l4
st %l4,[%l6]
ld [%l6],%l6
stb %g0,[%l6+%l5]
set yyfnd,%l6
ld [%l6],%l5
add %l5,4,%l4
st %l4,[%l6]
ld [%l5],%i0
ba .L35; nop
.L97:
set yytchar,%l6
ldsb [%i2],%l5
st %l5,[%l6]
ld [%l6],%l6
cmp %l6,10; bne .L107; nop
set yylineno,%l6
ld [%l6],%l5
sub %l5,1,%l5
st %l5,[%l6]
.L107:
set yysptr,%l6
ld [%l6],%l5
add %l5,1,%l4
st %l4,[%l6]
set yytchar,%l6
ld [%l6],%l6
stb %l6,[%l5]
.L95:
mov %i4,%l6
add %l6,-4,%i4
set yylstate,%l5
cmp %l6,%l5; bgu .L94; nop
set yytext,%l6
ldsb [%l6],%l6
cmp %l6,0; bne .L109; nop
set yysptr,%l6
set yysbuf,%l5
st %l5,[%l6]
mov %g0,%i0
ba .L35; nop
.L109:
set yysptr,%l3
ld [%l3],%l3
set yysbuf,%l2
cmp %l3,%l2; bleu .L119; nop
set yysptr,%l3
ld [%l3],%l2
add %l2,-1,%l2
st %l2,[%l3]
ldsb [%l2],%l4
ba .L120; nop
.L119:
set yyin,%l3
ld [%l3],%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
cmp %l2,0; bge .L121; nop
set yyin,%l3
ld [%l3],%o0
call __filbuf; nop
mov %o0,%l3
st %l3,[%fp+-4]
ba .L122; nop
.L121:
set yyin,%l3
ld [%l3],%l3
add %l3,4,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
ldub [%l2],%l3
st %l3,[%fp+-4]
.L122:
ld [%fp+-4],%l4
.L120:
set yytchar,%l3
st %l4,[%l3]
cmp %l4,10; bne .L117; nop
set yylineno,%l3
ld [%l3],%l2
add %l2,1,%l2
st %l2,[%l3]
set yytchar,%l3
ld [%l3],%l5
ba .L118; nop
.L117:
set yytchar,%l3
ld [%l3],%l5
.L118:
cmp %l5,-1; bne .L115; nop
mov %g0,%l6
ba .L116; nop
.L115:
set yytchar,%l3
ld [%l3],%l6
.L116:
set yytext,%l2
stb %l6,[%l2]
set yyprevious,%l2
sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
st %l3,[%l2]
set yyprevious,%l3
ld [%l3],%l3
cmp %l3,0; ble .L123; nop
set yyout,%l3
ld [%l3],%l3
ld [%l3],%l2
sub %l2,1,%l2
st %l2,[%l3]
cmp %l2,0; bge .L126; nop
set yyprevious,%l3
ld [%l3],%l3
and %l3,0xff,%l3
mov %l3,%o0
set yyout,%l3
ld [%l3],%o1
call __flsbuf; nop
ba .L127; nop
.L126:
set yyout,%l3
ld [%l3],%l3
add %l3,4,%l3
ld [%l3],%l2
add %l2,1,%l1
st %l1,[%l3]
set yyprevious,%l3
ld [%l3],%l3
stb %l3,[%l2]
.L127:
.L123:
set yytext,%i2
ba .L38; nop
.L35:
ret; restore
.type yylook,#function
.size yylook,.-yylook
.global yyback
.align 4
yyback:
save %sp,-96,%sp
mov %i0,%i5
cmp %i5,%g0; bne .L132; nop
mov %g0,%i0
ba .L128; nop
.L131:
mov %i0,%i5
add %i5,4,%i0
ld [%i5],%i5
cmp %i5,%i1; bne .L134; nop
set 1,%i0
ba .L128; nop
.L134:
.L132:
ld [%i0],%i5
cmp %i5,0; bne .L131; nop
mov %g0,%i0
.L128:
ret; restore
.type yyback,#function
.size yyback,.-yyback
.global yyinput
.align 4
yyinput:
save %sp,-96,%sp
set yysptr,%i1
ld [%i1],%i1
set yysbuf,%i0
cmp %i1,%i0; bleu .L145; nop
set yysptr,%i1
ld [%i1],%i0
add %i0,-1,%i0
st %i0,[%i1]
ldsb [%i0],%i3
ba .L146; nop
.L145:
set yyin,%i1
ld [%i1],%i1
ld [%i1],%i0
sub %i0,1,%i0
st %i0,[%i1]
cmp %i0,0; bge .L147; nop
set yyin,%i1
ld [%i1],%o0
call __filbuf; nop
mov %o0,%i1
mov %i1,%i2
ba .L148; nop
.L147:
set yyin,%i1
ld [%i1],%i1
add %i1,4,%i1
ld [%i1],%i0
add %i0,1,%l7
st %l7,[%i1]
ldub [%i0],%i2
.L148:
mov %i2,%i3
.L146:
set yytchar,%i1
st %i3,[%i1]
cmp %i3,10; bne .L143; nop
set yylineno,%i1
ld [%i1],%i0
add %i0,1,%i0
st %i0,[%i1]
set yytchar,%i1
ld [%i1],%i4
ba .L144; nop
.L143:
set yytchar,%i1
ld [%i1],%i4
.L144:
cmp %i4,-1; bne .L141; nop
mov %g0,%i5
ba .L142; nop
.L141:
set yytchar,%i1
ld [%i1],%i5
.L142:
mov %i5,%i0
.L136:
ret; restore
.type yyinput,#function
.size yyinput,.-yyinput
.global yyoutput
.align 4
yyoutput:
save %sp,-96,%sp
set yyout,%i5
ld [%i5],%i5
ld [%i5],%i4
sub %i4,1,%i4
st %i4,[%i5]
cmp %i4,0; bge .L151; nop
mov %i0,%i5
and %i5,0xff,%i5
mov %i5,%o0
set yyout,%i5
ld [%i5],%o1
call __flsbuf; nop
ba .L152; nop
.L151:
set yyout,%i5
ld [%i5],%i5
add %i5,4,%i5
ld [%i5],%i4
add %i4,1,%i3
st %i3,[%i5]
mov %i0,%i5
stb %i5,[%i4]
.L152:
mov %g0,%i0
.L149:
ret; restore
.type yyoutput,#function
.size yyoutput,.-yyoutput
.global yyunput
.align 4
yyunput:
save %sp,-96,%sp
set yytchar,%i5
st %i0,[%i5]
ld [%i5],%i5
cmp %i5,10; bne .L154; nop
set yylineno,%i5
ld [%i5],%i4
sub %i4,1,%i4
st %i4,[%i5]
.L154:
set yysptr,%i5
ld [%i5],%i4
add %i4,1,%i3
st %i3,[%i5]
set yytchar,%i5
ld [%i5],%i5
stb %i5,[%i4]
mov %g0,%i0
.L153:
ret; restore
.type yyunput,#function
.size yyunput,.-yyunput
.global main
.align 4
main:
save %sp,-96,%sp
call yyparse; nop
mov %g0,%i0
.L156:
ret; restore
.type main,#function
.size main,.-main
.global yyerror
.align 4
yyerror:
save %sp,-96,%sp
set .L158,%o0
mov %i0,%o1
call printf; nop
mov %g0,%i0
.L157:
ret; restore
.type yyerror,#function
.size yyerror,.-yyerror
.section ".data"
.global yyexca
.type yyexca,#object
.align 2
yyexca:
.half 0xffffffff
.half 0x1
.half 0x0
.half 0xffffffff
.half 0xfffffffe
.half 0x0
.size yyexca,12
.global yyact
.type yyact,#object
.align 2
yyact:
.half 0xc
.half 0x2
.half 0x9
.half 0x8
.half 0x11
.half 0xb
.half 0x19
.half 0x11
.half 0xf
.half 0x12
.half 0x10
.half 0xa
.half 0x12
.half 0x11
.half 0xf
.half 0x7
.half 0x10
.half 0xd
.half 0x12
.half 0x5
.half 0x3
.half 0x1
.half 0x0
.half 0x13
.half 0x14
.half 0x0
.half 0x0
.half 0x15
.half 0x16
.half 0x17
.half 0x18
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x6
.half 0xe
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0x4
.half 0x6
.size yyact,498
.global yypact
.type yypact,#object
.align 2
yypact:
.half 0xfffffc18
.half 0xfffffff7
.half 0xfffffc18
.half 0x5
.half 0xfffffff9
.half 0xffffffc5
.half 0xfffffc18
.half 0xfffffc18
.half 0xfffffc18
.half 0xffffffd8
.half 0xffffffe3
.half 0xffffffd8
.half 0xffffffd8
.half 0xfffffc18
.half 0xfffffc18
.half 0xffffffd8
.half 0xffffffd8
.half 0xffffffd8
.half 0xffffffd8
.half 0xffffffda
.half 0xffffffdd
.half 0xffffffda
.half 0xffffffda
.half 0xfffffc18
.half 0xfffffc18
.half 0xfffffc18
.size yypact,52
.global yypgo
.type yypgo,#object
.align 2
yypgo:
.half 0x0
.half 0x15
.half 0x14
.half 0x11
.half 0xb
.size yypgo,10
.global yyr1
.type yyr1,#object
.align 2
yyr1:
.half 0x0
.half 0x1
.half 0x1
.half 0x1
.half 0x1
.half 0x2
.half 0x4
.half 0x4
.half 0x4
.half 0x4
.half 0x4
.half 0x4
.half 0x4
.half 0x4
.half 0x3
.size yyr1,30
.global yyr2
.type yyr2,#object
.align 2
yyr2:
.half 0x0
.half 0x0
.half 0x2
.half 0x3
.half 0x3
.half 0x3
.half 0x3
.half 0x3
.half 0x3
.half 0x3
.half 0x2
.half 0x3
.half 0x1
.half 0x1
.half 0x1
.size yyr2,30
.global yychk
.type yychk,#object
.align 2
yychk:
.half 0xfffffc18
.half 0xffffffff
.half 0xa
.half 0xfffffffe
.half 0x100
.half 0xfffffffd
.half 0x101
.half 0xa
.half 0xa
.half 0x3d
.half 0xfffffffc
.half 0x2d
.half 0x28
.half 0xfffffffd
.half 0x102
.half 0x2b
.half 0x2d
.half 0x2a
.half 0x2f
.half 0xfffffffc
.half 0xfffffffc
.half 0xfffffffc
.half 0xfffffffc
.half 0xfffffffc
.half 0xfffffffc
.half 0x29
.size yychk,52
.global yydef
.type yydef,#object
.align 2
yydef:
.half 0x1
.half 0xfffffffe
.half 0x2
.half 0x0
.half 0x0
.half 0x0
.half 0xe
.half 0x3
.half 0x4
.half 0x0
.half 0x5
.half 0x0
.half 0x0
.half 0xc
.half 0xd
.half 0x0
.half 0x0
.half 0x0
.half 0x0
.half 0xa
.half 0x0
.half 0x6
.half 0x7
.half 0x8
.half 0x9
.half 0xb
.size yydef,52
.global yychar
.type yychar,#object
.size yychar,4
.align 4
yychar:
.word 0xffffffff
.global yynerrs
.type yynerrs,#object
.size yynerrs,4
.align 4
yynerrs:
.word 0x0
.global yyerrflag
.type yyerrflag,#object
.size yyerrflag,2
.align 2
yyerrflag:
.half 0x0
.global yyparse
.section ".text"
.align 4
yyparse:
save %sp,-392,%sp
mov %g0,%l5
mov %l5,%i4
set yychar,%l4
set -1,%l3
st %l3,[%l4]
set yynerrs,%l4
st %g0,[%l4]
set yyerrflag,%l4
sth %l5,[%l4]
add -302,%fp,%i3
set yyv-4,%i1
.L162:
add %i3,2,%l5
mov %l5,%i3
add 0,%fp,%l4
cmp %l5,%l4; bleu .L163; nop
set .L166,%o0
call yyerror; nop
set 1,%i0
ba .L159; nop
.L163:
sth %i4,[%i3]
add %i1,4,%i1
set yyval,%l5
ld [%l5],%l5
st %l5,[%i1]
.L167:
sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yypact,%l4
ldsh [%l5+%l4],%i2
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,-1000; bg .L168; nop
ba .L170; nop
.L168:
set yychar,%l5
ld [%l5],%l5
cmp %l5,0; bge .L171; nop
call yylex; nop
set yychar,%l4
st %o0,[%l4]
cmp %o0,0; bge .L173; nop
set yychar,%l5
st %g0,[%l5]
.L173:
.L171:
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
set yychar,%l4
ld [%l4],%l4
add %l5,%l4,%l5
mov %l5,%i2
sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,0; bl .L177; nop
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,249; bl .L175; nop
.L177:
ba .L170; nop
.L175:
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yyact,%l4
ldsh [%l5+%l4],%l5
mov %l5,%i2
sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yychk,%l4
ldsh [%l5+%l4],%l5
set yychar,%l4
ld [%l4],%l4
cmp %l5,%l4; bne .L178; nop
set yychar,%l5
set -1,%l4
st %l4,[%l5]
set yyval,%l5
set yylval,%l4
ld [%l4],%l4
st %l4,[%l5]
mov %i2,%i4
set yyerrflag,%l5
ldsh [%l5],%l5
cmp %l5,0; ble .L162; nop
set yyerrflag,%l5
ldsh [%l5],%l4
sub %l4,1,%l4
sth %l4,[%l5]
ba .L162; nop
.L178:
.L170:
sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yydef,%l4
ldsh [%l5+%l4],%l5
mov %l5,%i2
sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,-2; bne .L182; nop
set yychar,%l5
ld [%l5],%l5
cmp %l5,0; bge .L184; nop
call yylex; nop
set yychar,%l4
st %o0,[%l4]
cmp %o0,0; bge .L186; nop
set yychar,%l5
st %g0,[%l5]
.L186:
.L184:
set yyexca,%i0
ba .L191; nop
.L188:
.L189:
add %i0,4,%i0
.L191:
ldsh [%i0],%l5
cmp %l5,-1; bne .L188; nop
ldsh [%i0+2],%l5
sll %i4,8*(4-2),%l4; sra %l4,8*(4-2),%l4
cmp %l5,%l4; bne .L188; nop
ba .L193; nop
.L192:
ldsh [%i0],%l5
set yychar,%l4
ld [%l4],%l4
cmp %l5,%l4; bne .L195; nop
ba .L194; nop
.L195:
.L193:
add %i0,4,%l5
mov %l5,%i0
ldsh [%l5],%l5
cmp %l5,0; bge .L192; nop
.L194:
ldsh [%i0+2],%l5
mov %l5,%i2
sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,0; bge .L197; nop
mov %g0,%i0
ba .L159; nop
.L197:
.L182:
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,0; bne .L199; nop
set yyerrflag,%l4
ldsh [%l4],%l5
cmp %l5,0; bl .L201; nop
cmp %l5,3; bg .L201; nop
sll %l5,2,%l4
set .L217,%l3
ld [%l4+%l3],%l4
jmp %l4; nop
.section ".rodata"
.align 4
.L217:
.word .L204
.word .L207
.word .L207
.word .L214
.section ".text"
.L204:
set .L205,%o0
call yyerror; nop
.L206:
set yynerrs,%l4
ld [%l4],%l3
add %l3,1,%l3
st %l3,[%l4]
.L207:
set yyerrflag,%l4
set 3,%l3
sth %l3,[%l4]
ba .L209; nop
.L208:
ldsh [%i3],%l4
sll %l4,1,%l4
set yypact,%l3
ldsh [%l4+%l3],%l4
add %l4,256,%l4
mov %l4,%i2
sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
cmp %l4,0; bl .L211; nop
cmp %l4,249; bge .L211; nop
sll %l4,1,%l4
set yyact,%l3
ldsh [%l4+%l3],%l4
sll %l4,1,%l4
set yychk,%l3
ldsh [%l4+%l3],%l4
cmp %l4,256; bne .L211; nop
sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
sll %l4,1,%l4
set yyact,%l3
ldsh [%l4+%l3],%i4
ba .L162; nop
.L211:
ldsh [%i3],%l4
sll %l4,1,%l4
set yypact,%l3
ldsh [%l4+%l3],%i2
add %i3,-2,%i3
add %i1,-4,%i1
.L209:
mov %i3,%l4
add -300,%fp,%l3
cmp %l4,%l3; bgeu .L208; nop
.L213:
set 1,%i0
ba .L159; nop
.L214:
set yychar,%l4
ld [%l4],%l4
cmp %l4,0; bne .L215; nop
ba .L213; nop
.L215:
set yychar,%l4
set -1,%l3
st %l3,[%l4]
ba .L167; nop
.L201:
.L199:
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yyr2,%l4
add %l5,%l4,%l4
ldsh [%l4],%l3
sll %l3,1,%l3
sub %i3,%l3,%i3
mov %i1,%i5
ldsh [%l4],%l4
sll %l4,2,%l4
sub %i1,%l4,%i1
set yyval,%l4
ld [%i1+4],%l3
st %l3,[%l4]
mov %i2,%l6
set yyr1,%l4
ldsh [%l5+%l4],%i2
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yypgo,%l4
ldsh [%l5+%l4],%l5
ldsh [%i3],%l4
add %l5,%l4,%l5
add %l5,1,%l5
mov %l5,%l7
sll %l7,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,249; bge .L220; nop
sll %l5,1,%l5
set yyact,%l4
ldsh [%l5+%l4],%l5
mov %l5,%i4
sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yychk,%l4
ldsh [%l5+%l4],%l5
sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
neg %l4,%l4
cmp %l5,%l4; be .L218; nop
.L220:
sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
sll %l5,1,%l5
set yypgo,%l4
ldsh [%l5+%l4],%l5
sll %l5,1,%l5
set yyact,%l4
ldsh [%l5+%l4],%i4
.L218:
sll %l6,8*(4-2),%l5; sra %l5,8*(4-2),%l5
cmp %l5,4; bl .L162; nop
cmp %l5,14; bg .L162; nop
sll %l5,2,%l4
set .L242-16,%l3
ld [%l4+%l3],%l4
jmp %l4; nop
.section ".rodata"
.align 4
.L242:
.word .L224
.word .L225
.word .L227
.word .L229
.word .L231
.word .L233
.word .L235
.word .L162
.word .L237
.word .L239
.word .L241
.section ".text"
.L224:
set yyerrflag,%l4
sth %g0,[%l4]
ba .L162; nop
.L225:
set .L226,%o0
call printf; nop
ba .L162; nop
.L227:
set .L228,%o0
call printf; nop
ba .L162; nop
.L229:
set .L230,%o0
call printf; nop
ba .L162; nop
.L231:
set .L232,%o0
call printf; nop
ba .L162; nop
.L233:
set .L234,%o0
call printf; nop
ba .L162; nop
.L235:
set .L236,%o0
call printf; nop
ba .L162; nop
.L237:
set .L238,%o0
call printf; nop
ba .L162; nop
.L239:
set .L240,%o0
set yytext,%o1
call printf; nop
ba .L162; nop
.L241:
set .L158,%o0
set yytext,%o1
call printf; nop
ba .L162; nop
.L159:
ret; restore
.type yyparse,#function
.size yyparse,.-yyparse
.global yywrap
.align 4
yywrap:
set 1,%o0
.L244:
retl; nop
.type yywrap,#function
.size yywrap,.-yywrap
.section ".bss"
.global yyv
.type yyv,#object
.size yyv,600
.common yyv,600,4
.global yyfnd
.type yyfnd,#object
.size yyfnd,4
.common yyfnd,4,4
.global yyolsp
.type yyolsp,#object
.size yyolsp,4
.common yyolsp,4,4
.global yylsp
.type yylsp,#object
.size yylsp,4
.common yylsp,4,4
.global yylstate
.type yylstate,#object
.size yylstate,800
.common yylstate,800,4
.global yyestate
.type yyestate,#object
.size yyestate,4
.common yyestate,4,4
.global yytchar
.type yytchar,#object
.size yytchar,4
.common yytchar,4,4
.global yysbuf
.type yysbuf,#object
.size yysbuf,200
.common yysbuf,200,1
.global yymorfg
.type yymorfg,#object
.size yymorfg,4
.common yymorfg,4,4
.global yytext
.type yytext,#object
.size yytext,200
.common yytext,200,1
.global yyleng
.type yyleng,#object
.size yyleng,4
.common yyleng,4,4
.global yyval
.type yyval,#object
.size yyval,4
.common yyval,4,4
.global yylval
.type yylval,#object
.size yylval,4
.common yylval,4,4
.section ".rodata"
.align 1
.L240:
.byte 112
.byte 117
.byte 115
.byte 104
.byte 32
.byte 37
.byte 115
.byte 10
.byte 0
.align 1
.L238:
.byte 108
.byte 111
.byte 97
.byte 100
.byte 10
.byte 0
.align 1
.L236:
.byte 110
.byte 101
.byte 103
.byte 97
.byte 116
.byte 101
.byte 10
.byte 0
.align 1
.L234:
.byte 100
.byte 105
.byte 118
.byte 105
.byte 100
.byte 101
.byte 10
.byte 0
.align 1
.L232:
.byte 109
.byte 117
.byte 108
.byte 116
.byte 105
.byte 112
.byte 108
.byte 121
.byte 10
.byte 0
.align 1
.L230:
.byte 110
.byte 101
.byte 103
.byte 97
.byte 116
.byte 101
.byte 10
.byte 97
.byte 100
.byte 100
.byte 10
.byte 0
.align 1
.L228:
.byte 97
.byte 100
.byte 100
.byte 10
.byte 0
.align 1
.L226:
.byte 115
.byte 116
.byte 111
.byte 114
.byte 101
.byte 10
.byte 0
.align 1
.L205:
.byte 115
.byte 121
.byte 110
.byte 116
.byte 97
.byte 120
.byte 32
.byte 101
.byte 114
.byte 114
.byte 111
.byte 114
.byte 0
.align 1
.L166:
.byte 121
.byte 97
.byte 99
.byte 99
.byte 32
.byte 115
.byte 116
.byte 97
.byte 99
.byte 107
.byte 32
.byte 111
.byte 118
.byte 101
.byte 114
.byte 102
.byte 108
.byte 111
.byte 119
.byte 0
.align 1
.L158:
.byte 37
.byte 115
.byte 10
.byte 0
.align 1
.L18:
.byte 98
.byte 97
.byte 100
.byte 32
.byte 115
.byte 119
.byte 105
.byte 116
.byte 99
.byte 104
.byte 32
.byte 121
.byte 121
.byte 108
.byte 111
.byte 111
.byte 107
.byte 32
.byte 37
.byte 100
.byte 0