[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[f-cpu] next gcc tests: vsprintf.s



Hi,

I added output of latest gcc compilation
of vsprintf.c. I repaired most of things
reported by MR.

devik
; F-CPU ASM by devik@cdi.cz
.text
.extern simple_strtoul
simple_strtoul:
	dmove r2,r5,r3,r10
	move.64 r0,r6
	jmp_direct_nz r4,@L2
	loadcons.32 $10,r4
	load.8 [r2],r1
	xor.ori.8 $48,r1,r1
	jmp_direct_nz r1,@L2
	bseti.32 $3,r0,r4
	inc.64 r2,r5
	load.8 [r5],r1
	xor.ori.8 $120,r1,r1
	jmp_direct_nz r1,@L2
	inc.64 r5,r3
	load.8 [r3],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $68,r1,r1
	jmp_direct_z r1,@L2
	move.64 r3,r5
	bseti.32 $4,r0,r4
@L2:
	loadcons.64 $_ctype,r8
	move.64 r8,r9
	move.32 r4,r7	// zero_extend
	move.64 r7,r4
	jmp_direct @L5
@L13:
	mul.64 r4,r6,r1
	add.64 r2,r1,r6
	inc.64 r5,r5
@L5:
	load.8 [r5],r3
	move.8 r3,r1	// zero_extend
	add.64 r8,r1,r1
	load.8 [r1],r2
	andi.8 $68,r2,r1
	jmp_direct_z r1,@L6
	andi.8 $4,r2,r1
	jmp_direct_z r1,@L9
	widen.8 r3,r1
	subi.32 48,r1,r1
	widen.32 r1,r2
	jmp_direct @L10
@L9:
	load.8 [r5],r2
	move.8 r2,r1	// zero_extend
	add.64 r9,r1,r1
	load.8 [r1],r1
	andi.8 $2,r1,r1
	subi.8 32,r2,r3
	cmove.8 r1,r3,r2
	move.8 r2,r2	// zero_extend
	subi.32 55,r2,r2
	widen.32 r2,r2
@L10:
	cmpl.64 r7,r2,r1
	jmp_direct_nz r1,@L13
@L6:
	jmp_direct_z r10,@L14
	store.64 [r10],r5
@L14:
	move.64 r6,r1
	jmp ra
.extern simple_strtol
simple_strtol:
	store $-8,sp,r63
	load.8 [r2],r1
	xor.ori.8 $45,r1,r1
	jmp_direct_nz r1,@L16
	inc.64 r2,r2
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
	neg.64 r1,r1
	jmp_direct @L15
@L16:
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
@L15:
	load 8,sp,r63
	jmp ra
.extern simple_strtoull
simple_strtoull:
	move.64 r2,r6
	move.64 r0,r7
	jmp_direct_nz r4,@L18
	loadcons.32 $10,r4
	load.8 [r2],r1
	xor.ori.8 $48,r1,r1
	jmp_direct_nz r1,@L18
	bseti.32 $3,r0,r4
	inc.64 r2,r6
	load.8 [r6],r1
	xor.ori.8 $120,r1,r1
	jmp_direct_nz r1,@L18
	inc.64 r6,r5
	load.8 [r5],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $68,r1,r1
	jmp_direct_z r1,@L18
	move.64 r5,r6
	bseti.32 $4,r0,r4
@L18:
	loadcons.64 $_ctype,r9
	move.64 r9,r10
	move.32 r4,r8	// zero_extend
	move.64 r8,r4
	jmp_direct @L21
@L31:
	mul.64 r4,r7,r1
	add.64 r2,r1,r7
	inc.64 r6,r6
@L21:
	load.8 [r6],r5
	move.8 r5,r1	// zero_extend
	add.64 r9,r1,r1
	load.8 [r1],r2
	andi.8 $68,r2,r1
	jmp_direct_z r1,@L22
	andi.8 $4,r2,r1
	jmp_direct_z r1,@L25
	widen.8 r5,r1
	subi.32 48,r1,r1
	widen.32 r1,r2
	jmp_direct @L26
@L25:
	load.8 [r6],r2
	move.8 r2,r1	// zero_extend
	add.64 r10,r1,r1
	load.8 [r1],r1
	andi.8 $2,r1,r1
	jmp_direct_z r1,@L27
	subi.8 32,r2,r1
	move.8 r1,r1	// zero_extend
	subi.32 55,r1,r1
	widen.32 r1,r2
	jmp_direct @L26
@L27:
	load.8 [r6],r1
	widen.8 r1,r1
	subi.32 55,r1,r1
	widen.32 r1,r2
@L26:
	cmpl.64 r8,r2,r1
	jmp_direct_nz r1,@L31
@L22:
	jmp_direct_z r3,@L32
	store.64 [r3],r6
@L32:
	move.64 r7,r1
	jmp ra
.extern simple_strtoll
simple_strtoll:
	store $-8,sp,r63
	load.8 [r2],r1
	xor.ori.8 $45,r1,r1
	jmp_direct_nz r1,@L34
	inc.64 r2,r2
	loadcons.64 $simple_strtoull,r1
	jmp r1,ra
	neg.64 r1,r1
	jmp_direct @L33
@L34:
	loadcons.64 $simple_strtoull,r1
	jmp r1,ra
@L33:
	load 8,sp,r63
	jmp ra
skip_atoi:
	move.64 r2,r7
	move.32 r0,r4
	load.64 [r2],r1
	move.64 r1,r5
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r6
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_z r1,@L41
@L39:
	shiftli.32 $3,r4,r2
	add.32 r4,r2,r2
	add.32 r4,r2,r2
	load.8 [r5],r1
	widen.8 r1,r1
	add.32 r1,r2,r2
	subi.32 48,r2,r4
	inc.64 r5,r3
	store.64 [r7],r3
	move.64 r3,r5
	load.8 [r3],r1
	move.8 r1,r1	// zero_extend
	add.64 r6,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_nz r1,@L39
@L41:
	move.32 r4,r1
	jmp ra
@LC0:
	.ascii "0123456789abcdefghijklmnopqrstuvwxyz\0"
@LC1:
	.ascii "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\0"
number:
	store $-8,sp,r32
	store $-8,sp,r33
	store $-8,sp,r34
	store $-8,sp,r35
	store $-8,sp,r36
	store $-8,sp,r37
	store $-8,sp,r38
	store $-8,sp,r39
	store $-8,sp,r40
	store $-8,sp,r41
	store $-8,sp,r42
	store $-8,sp,r43
	store $-8,sp,r63
	dmove r2,r32,r3,r35
	dmove r4,r38,r5,r40
	dmove r6,r33,r7,r36
	move.32 r8,r37
	subi.64 116,r62,r3
	loadcons.64 $@LC0,r2
	load.64 [r2],r2
	store.64 [r3],r2
	addi.64 $8,r3,r1
	loadcons.64 $@LC0+8,r2
	load.64 [r2],r2
	store.64 [r1],r2
	addi.64 $8,r1,r1
	loadcons.64 $@LC0+16,r2
	load.64 [r2],r2
	store.64 [r1],r2
	addi.64 $8,r1,r1
	loadcons.64 $@LC0+24,r2
	load.64 [r2],r2
	store.64 [r1],r2
	addi.64 $8,r1,r1
	loadcons.64 $@LC0+32,r2
	load.32 [r2],r2
	store.32 [r1],r2
	addi.64 $4,r1,r1
	loadcons.64 $@LC0+36,r2
	load.8 [r2],r2
	store.8 [r1],r2
	subi.64 156,r62,r2
	loadcons.64 $@LC1,r4
	load.64 [r4],r4
	store.64 [r2],r4
	addi.64 $8,r2,r1
	loadcons.64 $@LC1+8,r4
	load.64 [r4],r4
	store.64 [r1],r4
	addi.64 $8,r1,r1
	loadcons.64 $@LC1+16,r4
	load.64 [r4],r4
	store.64 [r1],r4
	addi.64 $8,r1,r1
	loadcons.64 $@LC1+24,r4
	load.64 [r4],r4
	store.64 [r1],r4
	addi.64 $8,r1,r1
	loadcons.64 $@LC1+32,r4
	load.32 [r4],r4
	store.32 [r1],r4
	addi.64 $4,r1,r1
	loadcons.64 $@LC1+36,r4
	load.8 [r4],r4
	store.8 [r1],r4
	andi.32 $64,r8,r1
	nxor.andi.32 $0,r1,r1
	move.64 r2,r43
	cmove.64 r1,r3,r43
	andi.32 $16,r8,r2
	andi.32 $-2,r8,r1
	cmove.32 r2,r1,r37
	subi.32 2,r5,r1
	cmplei.32 $34,r1,r1
	move.64 r0,r2
	jmp_direct_z r1,@L42
	jmp_direct @L46
@L46:
	andi.32 $1,r37,r1
	nxor.andi.32 $0,r1,r1
	loadcons.0 32,r3
	loadcons.0 48,r2
	move.8 r2,r42
	cmove.8 r1,r3,r42
	loadcons.0 0,r41
	andi.32 $2,r37,r1
	jmp_direct_z r1,@L49
	cmplsi.64 $0,r38,r1
	jmp_direct_z r1,@L50
	loadcons.0 45,r41
	neg.64 r38,r38
	dec.32 r6,r33
	jmp_direct @L49
@L50:
	andi.32 $4,r37,r1
	jmp_direct_z r1,@L52
	loadcons.0 43,r41
	dec.32 r6,r33
	jmp_direct @L49
@L52:
	andi.32 $8,r37,r1
	jmp_direct_z r1,@L49
	loadcons.0 32,r41
	dec.32 r6,r33
@L49:
	andi.32 $32,r37,r1
	jmp_direct_z r1,@L55
	xor.ori.32 $16,r40,r1
	jmp_direct_nz r1,@L56
	subi.32 2,r33,r33
	jmp_direct @L55
@L56:
	nxor.andi.32 $8,r40,r1
	add.32 r1,r33,r33
@L55:
	move.32 r0,r34
	jmp_direct_nz r38,@L102
	subi.64 76,r62,r1
	loadcons.0 48,r2
	store.8 [r1],r2
	bseti.32 $0,r0,r34
	jmp_direct @L60
@L102:
	subi.64 76,r62,r39
	widen.32 r40,r3
	move.64 r38,r2
	loadcons.64 $__divdi3,r1
	jmp r1,ra
	add.64 r1,r43,r2
@L64:
	widen.32 r34,r1
	add.64 r1,r39,r1
	load.8 [r2],r3
	store.8 [r1],r3
	inc.32 r34,r34
	jmp_direct_nz r38,@L64
@L60:
	cmples.32 r36,r34,r1
	move.32 r34,r2
	cmove.32 r1,r36,r2
	move.32 r2,r36
	sub.32 r2,r33,r33
	andi.32 $17,r37,r1
	jmp_direct_nz r1,@L66
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_nz r1,@L66
	loadcons.0 32,r2
@L71:
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L70
	store.8 [r32],r2
@L70:
	inc.64 r32,r32
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_z r1,@L71
@L66:
	jmp_direct_z r41,@L72
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L73
	store.8 [r32],r41
@L73:
	inc.64 r32,r32
@L72:
	andi.32 $32,r37,r1
	jmp_direct_z r1,@L74
	xor.ori.32 $8,r40,r1
	jmp_direct_nz r1,@L75
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L76
	loadcons.0 48,r3
	store.8 [r32],r3
@L76:
	inc.64 r32,r32
	jmp_direct @L74
@L75:
	xor.ori.32 $16,r40,r1
	jmp_direct_nz r1,@L74
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L79
	loadcons.0 48,r1
	store.8 [r32],r1
@L79:
	inc.64 r32,r32
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L80
	addi.64 $33,r43,r1
	load.8 [r1],r1
	store.8 [r32],r1
@L80:
	inc.64 r32,r32
@L74:
	andi.32 $16,r37,r1
	jmp_direct_nz r1,@L81
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_nz r1,@L81
@L86:
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L85
	store.8 [r32],r42
@L85:
	inc.64 r32,r32
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_z r1,@L86
@L81:
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r34,r1,r1
	jmp_direct_nz r1,@L106
	loadcons.0 48,r2
@L91:
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L90
	store.8 [r32],r2
@L90:
	inc.64 r32,r32
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r34,r1,r1
	jmp_direct_z r1,@L91
@L106:
	move.32 r34,r1
	dec.32 r34,r34
	cmplesi.32 $0,r1,r1
	jmp_direct_nz r1,@L108
	subi.64 76,r62,r2
@L96:
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L95
	widen.32 r34,r1
	add.64 r1,r2,r1
	load.8 [r1],r1
	store.8 [r32],r1
@L95:
	inc.64 r32,r32
	move.32 r34,r1
	dec.32 r34,r34
	cmplesi.32 $0,r1,r1
	jmp_direct_z r1,@L96
@L108:
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_nz r1,@L110
	loadcons.0 32,r2
@L101:
	cmple.64 r35,r32,r1
	jmp_direct_z r1,@L100
	store.8 [r32],r2
@L100:
	inc.64 r32,r32
	move.32 r33,r1
	dec.32 r33,r33
	cmplesi.32 $0,r1,r1
	jmp_direct_z r1,@L101
@L110:
	move.64 r32,r2
@L42:
	move.64 r2,r1
	load 8,sp,r32
	load 8,sp,r33
	load 8,sp,r34
	load 8,sp,r35
	load 8,sp,r36
	load 8,sp,r37
	load 8,sp,r38
	load 8,sp,r39
	load 8,sp,r40
	load 8,sp,r41
	load 8,sp,r42
	load 8,sp,r43
	load 8,sp,r63
	jmp ra
@LC2:
	.ascii "<NULL>\0"
.extern vsnprintf
vsnprintf:
	store $-8,sp,r32
	store $-8,sp,r33
	store $-8,sp,r34
	store $-8,sp,r35
	store $-8,sp,r36
	store $-8,sp,r37
	store $-8,sp,r38
	store $-8,sp,r39
	store $-8,sp,r63
	dmove r2,r38,r3,r39
	subi.64 12,r62,r1
	store.64 [r1],r4
	dmove r5,r37,r2,r32
	move.32 r3,r1	// zero_extend
	add.64 r1,r2,r34
	dec.64 r34,r34
	dec.64 r2,r1
	cmpl.64 r1,r34,r1
	jmp_direct_z r1,@L112
	loadcons.64 $-1,r34
	neg.32 r2,r39
@L112:
	subi.64 12,r62,r1
	move.64 r1,r3
	load.64 [r1],r1
	load.8 [r1],r1
	jmp_direct_z r1,@L210
@L205:
	load.64 [r3],r1
	load.8 [r1],r2
	xor.ori.8 $37,r2,r1
	jmp_direct_z r1,@L117
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L118
	store.8 [r32],r2
@L118:
	inc.64 r32,r32
	jmp_direct @L115
@L117:
	move.32 r0,r33
@L119:
	subi.64 12,r62,r2
	load.64 [r2],r1
	inc.64 r1,r1
	store.64 [r2],r1
	load.8 [r1],r1
	widen.8 r1,r1
	subi.32 32,r1,r2
	cmplei.32 $16,r2,r1
	jmp_direct_z r1,@L120
	move.32 r2,r1	// zero_extend
	shiftli.64 $2,r1,r1
	loadaddrdi $@L126-.,r2
	add.64 r2,r1,r1
	load.32 [r1],r1
	widen.32 r1,r1
@SW126:	loadaddr r1,r1; jmp r1
	.align 2
	.align 2
@L126:
	.long @L123-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L124-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L122-@SW126
	.long @L120-@SW126
	.long @L121-@SW126
	.long @L120-@SW126
	.long @L120-@SW126
	.long @L125-@SW126
@L121:
	ori.32 $16,r33,r33
	jmp_direct @L119
@L122:
	ori.32 $4,r33,r33
	jmp_direct @L119
@L123:
	ori.32 $8,r33,r33
	jmp_direct @L119
@L124:
	ori.32 $32,r33,r33
	jmp_direct @L119
@L125:
	ori.32 $1,r33,r33
	jmp_direct @L119
@L120:
	loadcons.32 $-1,r36
	subi.64 12,r62,r3
	load.64 [r3],r1
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_z r1,@L128
	move.64 r3,r2
	loadcons.64 $skip_atoi,r1
	jmp r1,ra
	move.32 r1,r36
	jmp_direct @L129
@L128:
	subi.64 12,r62,r3
	load.64 [r3],r2
	load.8 [r2],r1
	xor.ori.8 $42,r1,r1
	jmp_direct_nz r1,@L129
	inc.64 r2,r1
	store.64 [r3],r1
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.32 [r1],r36
	cmplsi.32 $0,r36,r1
	jmp_direct_z r1,@L129
	neg.32 r36,r36
	ori.32 $16,r33,r33
@L129:
	loadcons.32 $-1,r7
	subi.64 12,r62,r3
	load.64 [r3],r2
	load.8 [r2],r1
	xor.ori.8 $46,r1,r1
	jmp_direct_nz r1,@L132
	inc.64 r2,r1
	store.64 [r3],r1
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_z r1,@L133
	move.64 r3,r2
	loadcons.64 $skip_atoi,r1
	jmp r1,ra
	move.32 r1,r7
	jmp_direct @L134
@L133:
	subi.64 12,r62,r3
	load.64 [r3],r2
	load.8 [r2],r1
	xor.ori.8 $42,r1,r1
	jmp_direct_nz r1,@L134
	inc.64 r2,r1
	store.64 [r3],r1
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.32 [r1],r7
@L134:
	cmplsi.32 $0,r7,r1
	nxor.andi.32 $0,r1,r1
	cmove.32 r1,r0,r7
@L132:
	loadcons.32 $-1,r4
	subi.64 12,r62,r1
	load.64 [r1],r1
	load.8 [r1],r2
	xor.ori.8 $104,r2,r1
	jmp_direct_z r1,@L138
	xor.ori.8 $108,r2,r1
	jmp_direct_z r1,@L138
	xor.ori.8 $76,r2,r1
	jmp_direct_z r1,@L138
	xor.ori.8 $90,r2,r1
	jmp_direct_nz r1,@L137
@L138:
	subi.64 12,r62,r3
	load.64 [r3],r1
	load.8 [r1],r2
	widen.8 r2,r4
	inc.64 r1,r2
	store.64 [r3],r2
	xor.ori.32 $108,r4,r1
	jmp_direct_nz r1,@L137
	load.8 [r2],r1
	xor.or.8 r4,r1,r1
	jmp_direct_nz r1,@L137
	loadcons.32 $76,r4
	inc.64 r2,r1
	store.64 [r3],r1
@L137:
	loadcons.32 $10,r5
	subi.64 12,r62,r1
	load.64 [r1],r1
	load.8 [r1],r1
	widen.8 r1,r1
	subi.32 37,r1,r2
	cmplei.32 $83,r2,r1
	jmp_direct_z r1,@L188
	move.32 r2,r1	// zero_extend
	shiftli.64 $2,r1,r1
	loadaddrdi $@L193-.,r2
	add.64 r2,r1,r1
	load.32 [r1],r1
	widen.32 r1,r1
@SW193:	loadaddr r1,r1; jmp r1
	.align 2
	.align 2
@L193:
	.long @L180-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L183-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L141-@SW193
	.long @L186-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L186-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L175-@SW193
	.long @L182-@SW193
	.long @L173-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L154-@SW193
	.long @L188-@SW193
	.long @L140-@SW193
	.long @L188-@SW193
	.long @L188-@SW193
	.long @L184-@SW193
@L141:
	andi.32 $16,r33,r1
	jmp_direct_nz r1,@L142
	dec.32 r36,r36
	cmplesi.32 $0,r36,r1
	jmp_direct_nz r1,@L142
	loadcons.0 32,r2
@L147:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L146
	store.8 [r32],r2
@L146:
	inc.64 r32,r32
	dec.32 r36,r36
	cmplesi.32 $0,r36,r1
	jmp_direct_z r1,@L147
@L142:
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.8 [r1],r2
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L148
	store.8 [r32],r2
@L148:
	inc.64 r32,r32
	dec.32 r36,r36
	cmplesi.32 $0,r36,r1
	jmp_direct_nz r1,@L115
	loadcons.0 32,r2
@L153:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L152
	store.8 [r32],r2
@L152:
	inc.64 r32,r32
	dec.32 r36,r36
	cmplesi.32 $0,r36,r1
	jmp_direct_nz r1,@L115
	jmp_direct @L153
@L154:
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r35
	loadcons.64 $@LC2,r1
	cmove.64 r35,r35,r1
	dmove r1,r35,r1,r2
	move.32 r7,r3
	loadcons.64 $strnlen,r1
	jmp r1,ra
	move.32 r1,r3
	andi.32 $16,r33,r1
	jmp_direct_nz r1,@L156
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r3,r1,r1
	jmp_direct_nz r1,@L156
	loadcons.0 32,r2
@L161:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L160
	store.8 [r32],r2
@L160:
	inc.64 r32,r32
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r3,r1,r1
	jmp_direct_z r1,@L161
@L156:
	move.32 r0,r2
	cmpls.32 r3,r2,r1
	jmp_direct_z r1,@L215
@L167:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L166
	load.8 [r35],r1
	store.8 [r32],r1
@L166:
	inc.64 r32,r32
	inc.64 r35,r35
	inc.32 r2,r2
	cmpls.32 r3,r2,r1
	jmp_direct_nz r1,@L167
@L215:
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r3,r1,r1
	jmp_direct_nz r1,@L115
	loadcons.0 32,r2
@L172:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L171
	store.8 [r32],r2
@L171:
	inc.64 r32,r32
	move.32 r36,r1
	dec.32 r36,r36
	cmples.32 r3,r1,r1
	jmp_direct_nz r1,@L115
	jmp_direct @L172
@L173:
	xor.ori.32 $-1,r36,r1
	jmp_direct_nz r1,@L174
	bseti.32 $4,r0,r36
	ori.32 $1,r33,r33
@L174:
	move.64 r37,r1
	addi.64 $8,r37,r37
	dmove r32,r2,r34,r3
	load.64 [r1],r4
	bseti.32 $4,r0,r5
	dmove r36,r6,r33,r8
	loadcons.64 $number,r1
	jmp r1,ra
	move.64 r1,r32
	jmp_direct @L115
@L175:
	xor.ori.32 $108,r4,r1
	jmp_direct_nz r1,@L176
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r2
	sub.64 r38,r32,r1
	store.64 [r2],r1
	jmp_direct @L115
@L176:
	xor.ori.32 $90,r4,r1
	jmp_direct_nz r1,@L178
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r2
	sub.32 r38,r32,r1
	store.32 [r2],r1
	jmp_direct @L115
@L178:
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r2
	sub.32 r38,r32,r1
	store.32 [r2],r1
	jmp_direct @L115
@L180:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L181
	loadcons.0 37,r1
	store.8 [r32],r1
@L181:
	inc.64 r32,r32
	jmp_direct @L115
@L182:
	bseti.32 $3,r0,r5
	jmp_direct @L140
@L183:
	ori.32 $64,r33,r33
@L184:
	bseti.32 $4,r0,r5
	jmp_direct @L140
@L186:
	ori.32 $2,r33,r33
	jmp_direct @L140
@L188:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L189
	loadcons.0 37,r1
	store.8 [r32],r1
@L189:
	inc.64 r32,r32
	subi.64 12,r62,r1
	load.64 [r1],r1
	load.8 [r1],r2
	jmp_direct_z r2,@L190
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L191
	store.8 [r32],r2
@L191:
	inc.64 r32,r32
	jmp_direct @L115
@L190:
	subi.64 12,r62,r2
	load.64 [r2],r1
	dec.64 r1,r1
	store.64 [r2],r1
	jmp_direct @L115
@L140:
	xor.ori.32 $76,r4,r1
	jmp_direct_nz r1,@L194
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r4
	jmp_direct @L195
@L194:
	xor.ori.32 $108,r4,r1
	jmp_direct_nz r1,@L196
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.64 [r1],r4
	jmp_direct @L195
@L196:
	xor.ori.32 $90,r4,r1
	jmp_direct_nz r1,@L199
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.32 [r1],r1
	move.32 r1,r4	// zero_extend
	jmp_direct @L195
@L199:
	xor.ori.32 $104,r4,r1
	jmp_direct_nz r1,@L201
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.16 [r1],r1
	move.16 r1,r4	// zero_extend
	andi.32 $2,r33,r1
	jmp_direct_z r1,@L195
	widen.16 r4,r4
	jmp_direct @L195
@L201:
	move.64 r37,r1
	addi.64 $8,r37,r37
	load.32 [r1],r1
	move.32 r1,r4	// zero_extend
	andi.32 $2,r33,r2
	widen.32 r4,r1
	cmove.64 r2,r1,r4
@L195:
	dmove r32,r2,r34,r3
	dmove r36,r6,r33,r8
	loadcons.64 $number,r1
	jmp r1,ra
	move.64 r1,r32
@L115:
	subi.64 12,r62,r1
	load.64 [r1],r2
	inc.64 r2,r2
	store.64 [r1],r2
	move.64 r1,r3
	load.8 [r2],r1
	jmp_direct_nz r1,@L205
@L210:
	cmple.64 r34,r32,r1
	jmp_direct_z r1,@L206
	loadcons.0 0,r1
	store.8 [r32],r1
	jmp_direct @L207
@L206:
	jmp_direct_z r39,@L207
	loadcons.0 0,r1
	store.8 [r34],r1
@L207:
	sub.32 r38,r32,r1
	load 8,sp,r32
	load 8,sp,r33
	load 8,sp,r34
	load 8,sp,r35
	load 8,sp,r36
	load 8,sp,r37
	load 8,sp,r38
	load 8,sp,r39
	load 8,sp,r63
	jmp ra
.extern snprintf
snprintf:
	store $-8,sp,r63
	addi.64 $4,r62,r1
	load.64 [r1],r4
	addi.64 $12,r62,r5
	subi.64 12,r62,r1
	store.64 [r1],r5
	loadcons.64 $vsnprintf,r1
	jmp r1,ra
	load 8,sp,r63
	jmp ra
.extern vsprintf
vsprintf:
	store $-8,sp,r63
	dmove r3,r1,r4,r5
	loadcons.32 $-1,r3
	move.64 r1,r4
	loadcons.64 $vsnprintf,r1
	jmp r1,ra
	load 8,sp,r63
	jmp ra
.extern sprintf
sprintf:
	store $-8,sp,r63
	addi.64 $4,r62,r1
	load.64 [r1],r3
	addi.64 $12,r62,r4
	subi.64 12,r62,r1
	store.64 [r1],r4
	loadcons.64 $vsprintf,r1
	jmp r1,ra
	load 8,sp,r63
	jmp ra
.extern vsscanf
vsscanf:
	store $-8,sp,r32
	store $-8,sp,r33
	store $-8,sp,r34
	store $-8,sp,r35
	store $-8,sp,r36
	store $-8,sp,r37
	store $-8,sp,r63
	move.64 r2,r37
	subi.64 12,r62,r1
	move.64 r1,r2
	store.64 [r1],r3
	dmove r4,r34,r37,r33
	move.32 r0,r36
	loadcons.32 $-1,r35
	load.8 [r3],r1
	jmp_direct_z r1,@L222
	load.8 [r37],r1
	jmp_direct_z r1,@L222
@L306:
	move.64 r2,r3
	load.64 [r2],r1
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r4
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_z r1,@L225
@L229:
	load.64 [r3],r1
	inc.64 r1,r1
	store.64 [r3],r1
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	add.64 r4,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L229
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r3
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_z r1,@L225
@L233:
	inc.64 r33,r33
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	add.64 r3,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L233
@L225:
	subi.64 12,r62,r5
	load.64 [r5],r4
	load.8 [r4],r3
	xor.ori.8 $37,r3,r1
	jmp_direct_z r1,@L234
	jmp_direct_z r3,@L234
	load.8 [r33],r2
	inc.64 r33,r33
	inc.64 r4,r1
	store.64 [r5],r1
	xor.or.8 r2,r3,r2
	jmp_direct_nz r2,@L222
	jmp_direct @L221
@L234:
	subi.64 12,r62,r3
	move.64 r3,r4
	load.64 [r3],r2
	load.8 [r2],r1
	jmp_direct_z r1,@L222
	inc.64 r2,r1
	store.64 [r3],r1
	load.8 [r1],r2
	xor.ori.8 $42,r2,r1
	jmp_direct_nz r1,@L237
	move.8 r2,r2	// zero_extend
	loadcons.64 $_ctype,r5
	loadcons.64 $_ctype+42,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L239
	jmp_direct_z r2,@L239
@L242:
	load.64 [r4],r1
	inc.64 r1,r1
	store.64 [r4],r1
	load.8 [r1],r3
	move.8 r3,r1	// zero_extend
	add.64 r5,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L239
	jmp_direct_nz r3,@L242
@L239:
	load.8 [r33],r3
	move.8 r3,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L221
	jmp_direct_z r3,@L221
	move.64 r2,r3
@L247:
	inc.64 r33,r33
	load.8 [r33],r2
	move.8 r2,r1	// zero_extend
	add.64 r3,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L221
	jmp_direct_nz r2,@L247
	jmp_direct @L221
@L237:
	subi.64 12,r62,r3
	load.64 [r3],r1
	load.8 [r1],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_z r1,@L248
	move.64 r3,r2
	loadcons.64 $skip_atoi,r1
	jmp r1,ra
	move.32 r1,r35
@L248:
	loadcons.32 $-1,r3
	subi.64 12,r62,r1
	load.64 [r1],r1
	load.8 [r1],r2
	xor.ori.8 $104,r2,r1
	jmp_direct_z r1,@L250
	xor.ori.8 $108,r2,r1
	jmp_direct_z r1,@L250
	xor.ori.8 $76,r2,r1
	jmp_direct_z r1,@L250
	xor.ori.8 $90,r2,r1
	jmp_direct_nz r1,@L249
@L250:
	subi.64 12,r62,r1
	load.64 [r1],r2
	load.8 [r2],r3
	widen.8 r3,r3
	inc.64 r2,r2
	store.64 [r1],r2
@L249:
	loadcons.32 $10,r4
	move.32 r0,r7
	subi.64 12,r62,r6
	load.64 [r6],r5
	load.8 [r5],r2
	jmp_direct_z r2,@L222
	load.8 [r33],r1
	jmp_direct_z r1,@L222
	widen.8 r2,r1
	subi.32 37,r1,r2
	inc.64 r5,r1
	store.64 [r6],r1
	cmplei.32 $83,r2,r1
	jmp_direct_z r1,@L281
	move.32 r2,r1	// zero_extend
	shiftli.64 $2,r1,r1
	loadaddrdi $@L282-.,r2
	add.64 r2,r1,r1
	load.32 [r1],r1
	widen.32 r1,r1
@SW282:	loadaddr r1,r1; jmp r1
	.align 2
	.align 2
@L282:
	.long @L279-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L275-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L254-@SW282
	.long @L277-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L277-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L272-@SW282
	.long @L273-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L261-@SW282
	.long @L281-@SW282
	.long @L253-@SW282
	.long @L281-@SW282
	.long @L281-@SW282
	.long @L275-@SW282
@L254:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r3
	xor.ori.32 $-1,r35,r2
	bseti.32 $0,r0,r1
	cmove.32 r2,r35,r1
	move.32 r1,r35
@L256:
	load.8 [r33],r1
	store.8 [r3],r1
	inc.64 r33,r33
	inc.64 r3,r3
	move.32 r35,r1
	dec.32 r35,r35
	cmplesi.32 $0,r1,r1
	jmp_direct_nz r1,@L257
	load.8 [r33],r1
	jmp_direct_nz r1,@L256
@L257:
	inc.32 r36,r36
	jmp_direct @L221
@L261:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r4
	xor.ori.32 $-1,r35,r2
	bclrni.32 $31,r0,r1
	cmove.32 r2,r35,r1
	move.32 r1,r35
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r3
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_z r1,@L314
@L266:
	inc.64 r33,r33
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	add.64 r3,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L266
@L314:
	load.8 [r33],r1
	move.8 r1,r3
	jmp_direct_z r1,@L268
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r5
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L268
	dec.32 r35,r35
	xor.ori.32 $-1,r35,r1
	jmp_direct_z r1,@L268
	loadcons.32 $-1,r2
@L271:
	store.8 [r4],r3
	inc.64 r33,r33
	inc.64 r4,r4
	load.8 [r33],r3
	jmp_direct_z r3,@L268
	move.8 r3,r1	// zero_extend
	add.64 r5,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L268
	dec.32 r35,r35
	xor.or.32 r2,r35,r1
	jmp_direct_nz r1,@L271
@L268:
	loadcons.0 0,r1
	store.8 [r4],r1
	inc.32 r36,r36
	jmp_direct @L221
@L272:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r2
	sub.32 r37,r33,r1
	store.32 [r2],r1
	jmp_direct @L221
@L273:
	bseti.32 $3,r0,r4
	jmp_direct @L253
@L275:
	bseti.32 $4,r0,r4
	jmp_direct @L253
@L277:
	bseti.32 $0,r0,r7
	jmp_direct @L253
@L279:
	load.8 [r33],r1
	inc.64 r33,r33
	xor.ori.8 $37,r1,r1
	move.32 r36,r2
	jmp_direct_nz r1,@L220
	jmp_direct @L221
@L281:
	move.32 r36,r2
	jmp_direct @L220
@L253:
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	move.64 r2,r5
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_z r1,@L317
@L286:
	inc.64 r33,r33
	load.8 [r33],r1
	move.8 r1,r1	// zero_extend
	add.64 r5,r1,r1
	load.8 [r1],r1
	andi.8 $32,r1,r1
	jmp_direct_nz r1,@L286
@L317:
	load.8 [r33],r1
	jmp_direct_z r1,@L222
	move.8 r1,r1	// zero_extend
	loadcons.64 $_ctype,r2
	add.64 r2,r1,r1
	load.8 [r1],r1
	andi.8 $4,r1,r1
	jmp_direct_z r1,@L222
	loadcons.32 $90,r2
	xor.or.32 r2,r3,r1
	jmp_direct_z r1,@L299
	cmples.32 r2,r3,r1
	jmp_direct_z r1,@L304
	xor.ori.32 $76,r3,r1
	jmp_direct_z r1,@L296
	jmp_direct @L300
@L304:
	xor.ori.32 $104,r3,r1
	jmp_direct_z r1,@L290
	xor.ori.32 $108,r3,r1
	jmp_direct_z r1,@L293
	jmp_direct @L300
@L290:
	jmp_direct_z r7,@L291
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtol,r1
	jmp r1,ra
	store.16 [r32],r1
	jmp_direct @L289
@L291:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
	store.16 [r32],r1
	jmp_direct @L289
@L293:
	jmp_direct_z r7,@L294
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtol,r1
	jmp r1,ra
	store.64 [r32],r1
	jmp_direct @L289
@L294:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
	store.64 [r32],r1
	jmp_direct @L289
@L296:
	jmp_direct_z r7,@L297
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoll,r1
	jmp r1,ra
	store.64 [r32],r1
	jmp_direct @L289
@L297:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoull,r1
	jmp r1,ra
	store.64 [r32],r1
	jmp_direct @L289
@L299:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
	store.32 [r32],r1
	jmp_direct @L289
@L300:
	jmp_direct_z r7,@L301
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtol,r1
	jmp r1,ra
	store.32 [r32],r1
	jmp_direct @L289
@L301:
	move.64 r34,r1
	addi.64 $8,r34,r34
	load.64 [r1],r32
	move.64 r33,r2
	subi.64 20,r62,r3
	loadcons.64 $simple_strtoul,r1
	jmp r1,ra
	store.32 [r32],r1
@L289:
	inc.32 r36,r36
	subi.64 20,r62,r1
	load.64 [r1],r2
	jmp_direct_z r2,@L222
	move.64 r2,r33
@L221:
	subi.64 12,r62,r2
	load.64 [r2],r1
	load.8 [r1],r1
	jmp_direct_z r1,@L222
	load.8 [r33],r1
	jmp_direct_nz r1,@L306
@L222:
	move.32 r36,r2
@L220:
	move.32 r2,r1
	load 8,sp,r32
	load 8,sp,r33
	load 8,sp,r34
	load 8,sp,r35
	load 8,sp,r36
	load 8,sp,r37
	load 8,sp,r63
	jmp ra
.extern sscanf
sscanf:
	store $-8,sp,r63
	addi.64 $4,r62,r1
	load.64 [r1],r3
	addi.64 $12,r62,r4
	subi.64 12,r62,r1
	store.64 [r1],r4
	loadcons.64 $vsscanf,r1
	jmp r1,ra
	load 8,sp,r63
	jmp ra