Merge pull request #463 from ISSOtm/windows_test_suite

Run tests on MinGW versions
This commit is contained in:
Eldred Habert
2020-01-09 01:15:47 +01:00
committed by GitHub
81 changed files with 245 additions and 232 deletions
+1
View File
@@ -2,6 +2,7 @@ rgbasm
rgblink rgblink
rgbfix rgbfix
rgbgfx rgbgfx
rgbshim.sh
*.o *.o
*.exe *.exe
.checkpatch-camelcase.* .checkpatch-camelcase.*
+17 -12
View File
@@ -132,6 +132,7 @@ clean:
$Q${RM} rgbfix rgbfix.exe $Q${RM} rgbfix rgbfix.exe
$Q${RM} rgbgfx rgbgfx.exe $Q${RM} rgbgfx rgbgfx.exe
$Qfind src/ -name "*.o" -exec rm {} \; $Qfind src/ -name "*.o" -exec rm {} \;
$Q${RM} rgbshim.sh
$Q${RM} src/asm/asmy.c src/asm/asmy.h $Q${RM} src/asm/asmy.c src/asm/asmy.h
$Q${RM} src/link/lexer.c src/link/parser.c src/link/parser.h $Q${RM} src/link/lexer.c src/link/parser.c src/link/parser.h
@@ -227,17 +228,21 @@ develop:
# install instructions instead. # install instructions instead.
mingw32: mingw32:
$Qenv PKG_CONFIG_PATH=/usr/i686-w64-mingw32/sys-root/mingw/lib/pkgconfig/ \ $Qmake CC=i686-w64-mingw32-gcc YACC=bison \
make CC=i686-w64-mingw32-gcc YACC=bison -j PKG_CONFIG=i686-w64-mingw32-pkg-config -j
$Qmv rgbasm rgbasm.exe $Qecho -e '#!/bin/sh\nWINEDEBUG=-all wine $$0.exe "$${@:1}"' > rgbshim.sh
$Qmv rgblink rgblink.exe $Qchmod +x rgbshim.sh
$Qmv rgbfix rgbfix.exe $Qln -s rgbshim.sh rgbasm
$Qmv rgbgfx rgbgfx.exe $Qln -s rgbshim.sh rgblink
$Qln -s rgbshim.sh rgbfix
$Qln -s rgbshim.sh rgbgfx
mingw64: mingw64:
$Qenv PKG_CONFIG_PATH=/usr/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig/ \ $Qmake CC=x86_64-w64-mingw32-gcc YACC=bison \
make CC=x86_64-w64-mingw32-gcc YACC=bison -j PKG_CONFIG=x86_64-w64-mingw32-pkg-config -j
$Qmv rgbasm rgbasm.exe $Qecho -e '#!/bin/sh\nWINEDEBUG=-all wine $$0.exe "$${@:1}"' > rgbshim.sh
$Qmv rgblink rgblink.exe $Qchmod +x rgbshim.sh
$Qmv rgbfix rgbfix.exe $Qln -s rgbshim.sh rgbasm
$Qmv rgbgfx rgbgfx.exe $Qln -s rgbshim.sh rgblink
$Qln -s rgbshim.sh rgbfix
$Qln -s rgbshim.sh rgbgfx
View File
+4
View File
@@ -0,0 +1,4 @@
ERROR: bracketed-symbols.asm(16):
Print types are only allowed for numbers
ERROR: bracketed-symbols.asm(20):
Expression must have a constant value
-4
View File
@@ -1,7 +1,3 @@
ERROR: bracketed-symbols.asm(16):
Print types are only allowed for numbers
ERROR: bracketed-symbols.asm(20):
Expression must have a constant value
$2A $2A
2a 2a
2A 2A
+4
View File
@@ -0,0 +1,4 @@
warning: correct-line-number.asm(5): [-Wuser]
Am I geting ahead of myself?
warning: correct-line-number.asm(11): [-Wuser]
Hopefully not.
-4
View File
@@ -1,4 +0,0 @@
warning: correct-line-number.asm(5): [-Wuser]
Am I geting ahead of myself?
warning: correct-line-number.asm(11): [-Wuser]
Hopefully not.
+2
View File
@@ -0,0 +1,2 @@
ERROR: divzero-instr.asm(2):
Division by zero
-2
View File
@@ -1,2 +0,0 @@
ERROR: divzero-instr.asm(2):
Division by zero
+4
View File
@@ -0,0 +1,4 @@
ERROR: divzero-section-bank.asm(1):
Invalid integer constant
ERROR: divzero-section-bank.asm(1):
Division by zero
-4
View File
@@ -1,4 +0,0 @@
ERROR: divzero-section-bank.asm(1):
Invalid integer constant
ERROR: divzero-section-bank.asm(1):
Division by zero
View File
+66
View File
@@ -0,0 +1,66 @@
ERROR: equs-recursion.asm(2):
Recursion limit (64) exceeded
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
-66
View File
@@ -1,66 +0,0 @@
ERROR: equs-recursion.asm(2):
Recursion limit (64) exceeded
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
+2
View File
@@ -0,0 +1,2 @@
ERROR: garbage_char.asm(1):
Found garbage character: 0xFF
-2
View File
@@ -1,2 +0,0 @@
ERROR: garbage_char.asm(1):
Found garbage character: 0xFF
+2
View File
@@ -0,0 +1,2 @@
ERROR: include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1):
Recursion limit (64) exceeded
-2
View File
@@ -1,2 +0,0 @@
ERROR: include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1):
Recursion limit (64) exceeded
+5
View File
@@ -0,0 +1,5 @@
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Label "sizeof_" created outside of a SECTION
while expanding symbol "VAR_DEF"
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Macro 'something' not defined
-5
View File
@@ -1,8 +1,3 @@
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Label "sizeof_" created outside of a SECTION
while expanding symbol "VAR_DEF"
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Macro 'something' not defined
$5 $5
$6 $6
$7 $7
+3
View File
@@ -0,0 +1,3 @@
ERROR: label-outside-section.asm(1):
Label "bad" created outside of a SECTION
error: Assembly aborted (1 errors)!
-3
View File
@@ -1,4 +1 @@
ERROR: label-outside-section.asm(1):
Label "bad" created outside of a SECTION
error: Assembly aborted (1 errors)!
OK! OK!
+3
View File
@@ -0,0 +1,3 @@
ERROR: label-redefinition.asm(7):
'Sym' already defined in label-redefinition.asm::m(6)
error: Assembly aborted (1 errors)!
-3
View File
@@ -1,3 +0,0 @@
ERROR: label-redefinition.asm(7):
'Sym' already defined in label-redefinition.asm::m(6)
error: Assembly aborted (1 errors)!
View File
@@ -0,0 +1,3 @@
ERROR: line-continuation-whitespace.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!
@@ -1,3 +0,0 @@
ERROR: line-continuation-whitespace.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!
+3
View File
@@ -0,0 +1,3 @@
ERROR: line-continuation.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!
-3
View File
@@ -1,3 +0,0 @@
ERROR: line-continuation.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!
+2
View File
@@ -0,0 +1,2 @@
ERROR: local-ref-without-parent.asm(3):
Local label reference '.test' in main scope
-2
View File
@@ -1,2 +0,0 @@
ERROR: local-ref-without-parent.asm(3):
Local label reference '.test' in main scope
+2
View File
@@ -0,0 +1,2 @@
ERROR: local-without-parent.asm(2):
Local label in main scope
-2
View File
@@ -1,2 +0,0 @@
ERROR: local-without-parent.asm(2):
Local label in main scope
+3
View File
@@ -0,0 +1,3 @@
ERROR: local-wrong-parent.asm(5):
Not currently in the scope of 'WrongParent'
error: Assembly aborted (1 errors)!
-3
View File
@@ -1,3 +0,0 @@
ERROR: local-wrong-parent.asm(5):
Not currently in the scope of 'WrongParent'
error: Assembly aborted (1 errors)!
View File
+4
View File
@@ -0,0 +1,4 @@
ERROR: macro-@.asm(1):
Label "foo" created outside of a SECTION
ERROR: macro-@.asm(1):
Macro '@' not defined
-4
View File
@@ -1,4 +0,0 @@
ERROR: macro-@.asm(1):
Label "foo" created outside of a SECTION
ERROR: macro-@.asm(1):
Macro '@' not defined
+2
View File
@@ -0,0 +1,2 @@
ERROR: macro-recursion.asm(4) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2):
Recursion limit (64) exceeded
-2
View File
@@ -1,2 +0,0 @@
ERROR: macro-recursion.asm(4) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2):
Recursion limit (64) exceeded
+6
View File
@@ -0,0 +1,6 @@
ERROR: multiple-charmaps.asm(100) -> multiple-charmaps.asm::new_(7):
Charmap 'map1' already exists
ERROR: multiple-charmaps.asm(102) -> multiple-charmaps.asm::set_(13):
Charmap 'map5' doesn't exist
ERROR: multiple-charmaps.asm(104) -> multiple-charmaps.asm::pop_(23):
No entries in the charmap stack
-6
View File
@@ -1,9 +1,3 @@
ERROR: multiple-charmaps.asm(100) -> multiple-charmaps.asm::new_(7):
Charmap 'map1' already exists
ERROR: multiple-charmaps.asm(102) -> multiple-charmaps.asm::set_(13):
Charmap 'map5' doesn't exist
ERROR: multiple-charmaps.asm(104) -> multiple-charmaps.asm::pop_(23):
No entries in the charmap stack
main charmap main charmap
$0 $0
newcharmap map1 newcharmap map1
+2
View File
@@ -0,0 +1,2 @@
ERROR: nested-brackets.asm(5):
Missing }
-2
View File
@@ -1,3 +1 @@
ERROR: nested-brackets.asm(5):
Missing }
OK OK
View File
+2
View File
@@ -0,0 +1,2 @@
ERROR: null-in-macro.asm(2):
Found null character
-2
View File
@@ -1,2 +0,0 @@
ERROR: null-in-macro.asm(2):
Found null character
View File
+12
View File
@@ -0,0 +1,12 @@
warning: overflow.asm(24): [-Wdiv]
Division of min value by -1
warning: overflow.asm(25): [-Wdiv]
Division of min value by -1
warning: overflow.asm(34): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(35): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(39): [-Wlarge-constant]
Integer constant '4294967296' is too large
warning: overflow.asm(42): [-Wlarge-constant]
Graphics constant '`333333333' is too long
-12
View File
@@ -1,15 +1,3 @@
warning: overflow.asm(24): [-Wdiv]
Division of min value by -1
warning: overflow.asm(25): [-Wdiv]
Division of min value by -1
warning: overflow.asm(34): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(35): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(39): [-Wlarge-constant]
Integer constant '4294967296' is too large
warning: overflow.asm(42): [-Wlarge-constant]
Graphics constant '`333333333' is too long
$80000000 $80000000
$7FFFFFFF $7FFFFFFF
$80000000 $80000000
+6
View File
@@ -0,0 +1,6 @@
ERROR: pc-bank.asm(2):
Source address $2a00 not in $FF00 to $FFFF
ERROR: pc-bank.asm(11):
@'s bank is not known yet
ERROR: pc-bank.asm(11):
Non-constant expression
-6
View File
@@ -1,8 +1,2 @@
ERROR: pc-bank.asm(2):
Source address $2a00 not in $FF00 to $FFFF
ERROR: pc-bank.asm(11):
@'s bank is not known yet
ERROR: pc-bank.asm(11):
Non-constant expression
@: $2A @: $2A
Str: $2A Str: $2A
+2
View File
@@ -0,0 +1,2 @@
ERROR: pops-no-pushed-sections.asm(1):
No entries in the section stack
-2
View File
@@ -1,2 +0,0 @@
ERROR: pops-no-pushed-sections.asm(1):
No entries in the section stack
+4
View File
@@ -0,0 +1,4 @@
ERROR: pops-restore-no-section.asm(9):
Label "DisallowedContent" created outside of a SECTION
ERROR: pops-restore-no-section.asm(10):
Code generation before SECTION directive
-4
View File
@@ -1,4 +0,0 @@
ERROR: pops-restore-no-section.asm(9):
Label "DisallowedContent" created outside of a SECTION
ERROR: pops-restore-no-section.asm(10):
Code generation before SECTION directive
View File
+3
View File
@@ -0,0 +1,3 @@
ERROR: reference-undefined-sym.asm(4):
'X' already referenced at reference-undefined-sym.asm(2)
error: Assembly aborted (1 errors)!
-3
View File
@@ -1,3 +0,0 @@
ERROR: reference-undefined-sym.asm(4):
'X' already referenced at reference-undefined-sym.asm(2)
error: Assembly aborted (1 errors)!
View File
+2
View File
@@ -0,0 +1,2 @@
ERROR: remote-local-noexist.asm(7):
'Parent.child.fail' is a nonsensical reference to a nested local symbol
-2
View File
@@ -1,2 +0,0 @@
ERROR: remote-local-noexist.asm(7):
'Parent.child.fail' is a nonsensical reference to a nested local symbol
View File
+10
View File
@@ -0,0 +1,10 @@
warning: rept-line-no.asm(2): [-Wuser]
Line 2
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~1(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~2(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~3(5): [-Wuser]
Line 5
warning: rept-line-no.asm(8): [-Wuser]
Line 8
-10
View File
@@ -1,10 +0,0 @@
warning: rept-line-no.asm(2): [-Wuser]
Line 2
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~1(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~2(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~3(5): [-Wuser]
Line 5
warning: rept-line-no.asm(8): [-Wuser]
Line 8
View File
+16
View File
@@ -0,0 +1,16 @@
warning: strsub.asm(13) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 32
warning: strsub.asm(14) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position starts at 1
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(16) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 1
warning: strsub.asm(20) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 10
-16
View File
@@ -1,19 +1,3 @@
warning: strsub.asm(13) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 32
warning: strsub.asm(14) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position starts at 1
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(16) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 1
warning: strsub.asm(20) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 10
A A
B B
C C
+2
View File
@@ -0,0 +1,2 @@
ERROR: symbol-invalid-macro-arg.asm(1):
Invalid macro argument '\0' in symbol
-2
View File
@@ -1,2 +0,0 @@
ERROR: symbol-invalid-macro-arg.asm(1):
Invalid macro argument '\0' in symbol
+7
View File
@@ -0,0 +1,7 @@
ERROR: symbol-override.asm(6):
'W' already defined as constant at symbol-override.asm(5)
ERROR: symbol-override.asm(10):
'X' already defined as constant at symbol-override.asm(9)
ERROR: symbol-override.asm(14):
'Y' already defined as non-constant at symbol-override.asm(13)
error: Assembly aborted (3 errors)!
-7
View File
@@ -1,8 +1 @@
ERROR: symbol-override.asm(6):
'W' already defined as constant at symbol-override.asm(5)
ERROR: symbol-override.asm(10):
'X' already defined as constant at symbol-override.asm(9)
ERROR: symbol-override.asm(14):
'Y' already defined as non-constant at symbol-override.asm(13)
error: Assembly aborted (3 errors)!
V=$1 V=$1
+21 -12
View File
@@ -3,15 +3,17 @@ export LC_ALL=C
o=$(mktemp) o=$(mktemp)
gb=$(mktemp) gb=$(mktemp)
before=$(mktemp) input=$(mktemp)
after=$(mktemp) output=$(mktemp)
errput=$(mktemp)
rc=0 rc=0
for i in *.asm; do for i in *.asm; do
for variant in '' '.pipe'; do for variant in '' '.pipe'; do
if [ -z "$variant" ]; then if [ -z "$variant" ]; then
../../rgbasm -Weverything -o $o $i > $after 2>&1 ../../rgbasm -Weverything -o $o $i > $output 2> $errput
desired_output=${i%.asm}.out desired_output=${i%.asm}.out
desired_errput=${i%.asm}.err
else else
# `include-recursion.asm` refers to its own name inside the test code. # `include-recursion.asm` refers to its own name inside the test code.
# Skip testing with stdin input for that file. # Skip testing with stdin input for that file.
@@ -23,27 +25,34 @@ for i in *.asm; do
# stdin redirection makes the input an unseekable pipe - a scenario # stdin redirection makes the input an unseekable pipe - a scenario
# that's harder to deal with and was broken when the feature was # that's harder to deal with and was broken when the feature was
# first implemented. # first implemented.
cat $i | ../../rgbasm -Weverything -o $o - > $after 2>&1 cat $i | ../../rgbasm -Weverything -o $o - > $output 2> $errput
# Use two otherwise unused files for temp storage
desired_output=$input
desired_errput=$gb
# Escape regex metacharacters # Escape regex metacharacters
desired_output=$before
subst="$(printf '%s\n' "$i" | sed 's:[][\/.^$*]:\\&:g')" subst="$(printf '%s\n' "$i" | sed 's:[][\/.^$*]:\\&:g')"
# Replace the file name with a dash to match changed output
sed "s/$subst/-/g" ${i%.asm}.out > $desired_output sed "s/$subst/-/g" ${i%.asm}.out > $desired_output
sed "s/$subst/-/g" ${i%.asm}.err > $desired_errput
fi fi
diff -u $desired_output $after diff -u --strip-trailing-cr $desired_output $output
rc=$(($? || $rc)) rc=$(($? || $rc))
diff -u --strip-trailing-cr $desired_errput $errput
rc=$(($? || $rc))
bin=${i%.asm}.out.bin bin=${i%.asm}.out.bin
if [ -f $bin ]; then if [ -f $bin ]; then
../../rgblink -o $gb $o > $after 2>&1 ../../rgblink -o $gb $o > $output 2>&1
dd if=$gb count=1 bs=$(printf %s $(wc -c < $bin)) > $after 2>/dev/null dd if=$gb count=1 bs=$(printf %s $(wc -c < $bin)) > $output 2>/dev/null
hexdump -C $after > $before && mv $before $after hexdump -C $output > $input && mv $input $output
hexdump -C $bin > $before hexdump -C $bin > $input
diff -u $before $after diff -u --strip-trailing-cr $input $output
rc=$(($? || $rc)) rc=$(($? || $rc))
fi fi
done done
done done
rm -f $o $gb $before $after rm -f $o $gb $input $output
exit $rc exit $rc
+1
View File
@@ -0,0 +1 @@
error: undefined-dot.asm(3) : '.' not defined
-1
View File
@@ -1 +0,0 @@
error: undefined-dot.asm(3) : '.' not defined
View File
View File
+14 -14
View File
@@ -12,62 +12,62 @@ RGBLINK=../../rgblink
$RGBASM -o $otemp bank-numbers.asm $RGBASM -o $otemp bank-numbers.asm
$RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1
diff bank-numbers.out $outtemp diff --strip-trailing-cr bank-numbers.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
dd if=$gbtemp count=1 bs=20 > $otemp 2>/dev/null dd if=$gbtemp count=1 bs=20 > $otemp 2>/dev/null
diff bank-numbers.out.bin $otemp diff --strip-trailing-cr bank-numbers.out.bin $otemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp section-attributes.asm $RGBASM -o $otemp section-attributes.asm
$RGBLINK -l section-attributes.link -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -l section-attributes.link -o $gbtemp $otemp > $outtemp 2>&1
diff section-attributes.out $outtemp diff --strip-trailing-cr section-attributes.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBLINK -l section-attributes-mismatch.link -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -l section-attributes-mismatch.link -o $gbtemp $otemp > $outtemp 2>&1
diff section-attributes-mismatch.out $outtemp diff --strip-trailing-cr section-attributes-mismatch.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp wramx-dmg-mode.asm $RGBASM -o $otemp wramx-dmg-mode.asm
$RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1
diff wramx-dmg-mode-no-d.out $outtemp diff --strip-trailing-cr wramx-dmg-mode-no-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1
diff wramx-dmg-mode-d.out $outtemp diff --strip-trailing-cr wramx-dmg-mode-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp vram-fixed-dmg-mode.asm $RGBASM -o $otemp vram-fixed-dmg-mode.asm
$RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1
diff vram-fixed-dmg-mode-no-d.out $outtemp diff --strip-trailing-cr vram-fixed-dmg-mode-no-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1
diff vram-fixed-dmg-mode-d.out $outtemp diff --strip-trailing-cr vram-fixed-dmg-mode-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp vram-floating-dmg-mode.asm $RGBASM -o $otemp vram-floating-dmg-mode.asm
$RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1
diff vram-floating-dmg-mode-no-d.out $outtemp diff --strip-trailing-cr vram-floating-dmg-mode-no-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1
diff vram-floating-dmg-mode-d.out $outtemp diff --strip-trailing-cr vram-floating-dmg-mode-d.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp romx-tiny.asm $RGBASM -o $otemp romx-tiny.asm
$RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1
diff romx-tiny-no-t.out $outtemp diff --strip-trailing-cr romx-tiny-no-t.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBLINK -t -o $gbtemp $otemp > $outtemp 2>&1 $RGBLINK -t -o $gbtemp $otemp > $outtemp 2>&1
diff romx-tiny-t.out $outtemp diff --strip-trailing-cr romx-tiny-t.out $outtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp high-low-a.asm $RGBASM -o $otemp high-low-a.asm
$RGBLINK -o $gbtemp $otemp $RGBLINK -o $gbtemp $otemp
$RGBASM -o $otemp high-low-b.asm $RGBASM -o $otemp high-low-b.asm
$RGBLINK -o $gbtemp2 $otemp $RGBLINK -o $gbtemp2 $otemp
diff $gbtemp $gbtemp2 diff --strip-trailing-cr $gbtemp $gbtemp2
rc=$(($? || $rc)) rc=$(($? || $rc))
$RGBASM -o $otemp all-instructions.asm $RGBASM -o $otemp all-instructions.asm
$RGBLINK -o $gbtemp $otemp $RGBLINK -o $gbtemp $otemp
diff all-instructions.out.bin $gbtemp diff --strip-trailing-cr all-instructions.out.bin $gbtemp
rc=$(($? || $rc)) rc=$(($? || $rc))
rm -f $otemp $gbtemp $gbtemp2 $outtemp rm -f $otemp $gbtemp $gbtemp2 $outtemp
+3 -5
View File
@@ -28,8 +28,7 @@ pushd pokecrystal
git fetch git fetch
git checkout fa7261a8eea2676746c130a517479e2a82a7d352 git checkout fa7261a8eea2676746c130a517479e2a82a7d352
make clean make clean
make -j make -j4 compare
make compare
popd popd
if [ ! -d pokered ]; then if [ ! -d pokered ]; then
@@ -39,8 +38,7 @@ pushd pokered
git fetch git fetch
git checkout ab696295b3d029663062238e8033882bb8cd9cff git checkout ab696295b3d029663062238e8033882bb8cd9cff
make clean make clean
make -j make -j4 compare
make compare
popd popd
if [ ! -d ucity ]; then if [ ! -d ucity ]; then
@@ -50,5 +48,5 @@ pushd ucity
git fetch git fetch
git checkout b0635f12553c2fae947fd91aa54d4caa602d8266 git checkout b0635f12553c2fae947fd91aa54d4caa602d8266
make clean make clean
make -j make -j4
popd popd