Remove undefined behavior from shifts

`asl` and `asr` in `src/link/patch.c` courtesy of @pinobatch, and rearranged in RGBASM
evaluators.
This commit is contained in:
ISSOtm
2020-01-17 09:08:49 +01:00
parent 1bd41bf79a
commit b11d121c48
10 changed files with 244 additions and 37 deletions

12
test/asm/shift.out Normal file
View File

@@ -0,0 +1,12 @@
1 << 1 = $2
1 << 32 = $0
1 << 9001 = $0
-1 << 1 = $FFFFFFFE
-1 << 32 = $0
-1 << -9001 = $FFFFFFFF
-1 >> 1 = $FFFFFFFF
-1 >> 32 = $FFFFFFFF
-1 >> 9001 = $FFFFFFFF
-4 >> 1 = $FFFFFFFE
-4 >> 2 = $FFFFFFFF
-1 >> -9001 = $0