Sort .sym files in ascending order, and test for it (#1355)

This commit is contained in:
Sylvie
2024-03-13 18:32:35 -04:00
committed by GitHub
parent 658286c8e4
commit 8ec0d01fc4
7 changed files with 64 additions and 7 deletions

15
test/link/symbols/a.asm Normal file
View File

@@ -0,0 +1,15 @@
SECTION "alpha", ROM0
Alpha::
db 1, 2, 3
End:
SECTION "a", WRAM0
wAlpha::
ds 3
.End::
SECTION UNION "U", WRAM0
wStart:
.word1: dw
.word2: dw
wEnd:

14
test/link/symbols/b.asm Normal file
View File

@@ -0,0 +1,14 @@
SECTION "beta", ROM0
Beta::
db 4, 5, 6
End:
SECTION "b", WRAM0
wBeta::
ds 3
.End::
SECTION UNION "U", WRAM0
wStart:
.long1: dl
wEnd:

View File

Binary file not shown.

View File

@@ -0,0 +1,16 @@
; File generated by rgblink
00:0000 Beta
00:0003 End
00:0003 Alpha
00:0006 End
00:c000 wStart
00:c000 wStart
00:c000 wStart.long1
00:c000 wStart.word1
00:c002 wStart.word2
00:c004 wEnd
00:c004 wEnd
00:c004 wBeta
00:c007 wBeta.End
00:c007 wAlpha
00:c00a wAlpha.End

View File

@@ -9,13 +9,14 @@ otemp="$(mktemp)"
gbtemp="$(mktemp)"
gbtemp2="$(mktemp)"
outtemp="$(mktemp)"
outtemp2="$(mktemp)"
tests=0
failed=0
rc=0
# Immediate expansion is the desired behavior.
# shellcheck disable=SC2064
trap "rm -f ${otemp@Q} ${gbtemp@Q} ${gbtemp2@Q} ${outtemp@Q}" EXIT
trap "rm -f ${otemp@Q} ${gbtemp@Q} ${gbtemp2@Q} ${outtemp@Q} ${outtemp2@Q}" EXIT
bold="$(tput bold)"
resbold="$(tput sgr0)"
@@ -276,6 +277,17 @@ for i in section-union/*.asm; do
evaluateTest
done
test="symbols"
startTest
"$RGBASM" -o "$otemp" "$test"/a.asm
"$RGBASM" -o "$gbtemp2" "$test"/b.asm
continueTest
rgblinkQuiet -o "$gbtemp" -n "$outtemp2" "$gbtemp2" "$otemp" 2>"$outtemp"
tryDiff "$test"/out.err "$outtemp"
tryDiff "$test"/ref.out.sym "$outtemp2"
tryCmpRom "$test"/ref.out.bin
evaluateTest
if [[ "$failed" -eq 0 ]]; then
echo "${bold}${green}All ${tests} tests passed!${rescolors}${resbold}"
else