1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-07-14 05:28:55 +00:00
6502bench/SourceGen/SGTestData/Expected/2004-numeric-types_cc65.S
Andy McFadden f157fbbfd3 Add regression test for data analysis bug
The uncategorized data scanner isn't supposed to create strings or
".fill" directives that straddle labels, long comments, notes,
visualizations, or ORG directives.  The test for crossing an ORG
directive is incomplete, and doesn't correctly handle no-op ORGs
(where the new address is the same as the old address).

The code generator doesn't output ORGs that are hidden inside other
things, so we're not generating bad code, but it looks funny on
screen and may cause problems later on.  The 2004-numeric-types test
has the basic .align/.fill/.bulk directive tests, and now has an
extended set of tests for uncategorized data region splitting.
2019-12-30 14:09:18 -08:00

88 lines
2.2 KiB
ArmAsm

;Project file was edited to get all big-endian data types, and to have an
;incorrect .junk alignment directive.
.setcpu "6502"
; .segment "SEG000"
.org $1000
bit L1448
jsr L14A8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
rts
.byte $11
.word $1122
.faraddr $112233
.dword $11223344
.byte $11
.dbyt $1122
.byte $11,$22,$33
.byte $11,$22,$33,$44
.res 2,$00
.byte $80
.res 3,$00
.byte $80
.res 4,$00
.byte $80
.res 5,$00
.byte $80
.res 256,$00
.byte $80
.res 257,$cc
.byte $11
.byte $80
.byte $11,$22,$33,$44,$55,$66,$77,$88,$99,$00
.byte $80
LABEL: .byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff ;comment on bulk
.byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff
.byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff
.byte $ff,$ee,$dd,$cc,$bb,$aa,$99,$88,$77,$66,$55,$44,$33,$22,$11,$00
.byte $80
.res 115,$aa
.byte $81
.res 63,$00
.byte $81
.res 31,$ab
.byte $00,$00,$00,$00,$00,$00,$00,$01
.byte $81
.byte $10,$00,$00,$00,$00,$00,$00,$00
.byte $81
.res 2,$dd ;incorrect alignment
.res 140,$00
.res 16,$82
.res 8,$83
; .segment "SEG002"
.org $1428
.res 8,$83
.res 8,$84
UserLabel: .res 8,$84
.res 8,$85
L1448: .res 8,$85
.res 16,$86
.res 8,$87
;long comment
.res 8,$87
.res 16,$88
.res 8,$89
.res 8,$89
.res 8,$8a
.res 8,$8a
.res 8,$8b
L14A8: .res 8,$8b
.res 8,$8c
.byte %10001100
.res 7,$8c