|
10 | 10 | (check-not-exn (thunk (Mov 'rax (- (expt 2 63))))) |
11 | 11 | (check-exn exn:fail? (thunk (Cmp 'rax (expt 2 32)))) |
12 | 12 | (check-exn exn:fail? (thunk (Cmp 'rax (- (add1 (expt 2 31)))))) |
13 | | -(check-not-exn (thunk (Cmp 'rax (sub1 (expt 2 32))))) |
| 13 | +(check-not-exn (thunk (Cmp 'rax (sub1 (expt 2 31))))) |
14 | 14 | (check-not-exn (thunk (Cmp 'rax (- (expt 2 31))))) |
15 | 15 | (check-exn exn:fail? (thunk (And 'rax (expt 2 32)))) |
16 | 16 | (check-exn exn:fail? (thunk (And 'rax (- (add1 (expt 2 31)))))) |
17 | | -(check-not-exn (thunk (And 'rax (sub1 (expt 2 32))))) |
| 17 | +(check-not-exn (thunk (And 'rax (sub1 (expt 2 31))))) |
18 | 18 | (check-not-exn (thunk (And 'rax (- (expt 2 31))))) |
19 | 19 | (check-exn exn:fail? (thunk (Or 'rax (expt 2 32)))) |
20 | 20 | (check-exn exn:fail? (thunk (Or 'rax (- (add1 (expt 2 31)))))) |
21 | | -(check-not-exn (thunk (Or 'rax (sub1 (expt 2 32))))) |
| 21 | +(check-not-exn (thunk (Or 'rax (sub1 (expt 2 31))))) |
22 | 22 | (check-not-exn (thunk (Or 'rax (- (expt 2 31))))) |
23 | 23 | (check-exn exn:fail? (thunk (Xor 'rax (expt 2 32)))) |
24 | 24 | (check-exn exn:fail? (thunk (Xor 'rax (- (add1 (expt 2 31)))))) |
25 | | -(check-not-exn (thunk (Xor 'rax (sub1 (expt 2 32))))) |
| 25 | +(check-not-exn (thunk (Xor 'rax (sub1 (expt 2 31))))) |
26 | 26 | (check-not-exn (thunk (Xor 'rax (- (expt 2 31))))) |
27 | 27 | (check-exn exn:fail? (thunk (Push (expt 2 32)))) |
28 | 28 | (check-exn exn:fail? (thunk (Push (- (add1 (expt 2 31)))))) |
29 | 29 | (check-not-exn (thunk (Push (sub1 (expt 2 32))))) |
30 | 30 | (check-not-exn (thunk (Push (- (expt 2 31))))) |
31 | 31 | (check-exn exn:fail? (thunk (Add 'rax (expt 2 32)))) |
32 | 32 | (check-exn exn:fail? (thunk (Add 'rax (- (add1 (expt 2 31)))))) |
33 | | -(check-not-exn (thunk (Add 'rax (sub1 (expt 2 32))))) |
| 33 | +(check-not-exn (thunk (Add 'rax (sub1 (expt 2 31))))) |
34 | 34 | (check-not-exn (thunk (Add 'rax (- (expt 2 31))))) |
35 | 35 | (check-exn exn:fail? (thunk (Sub 'rax (expt 2 32)))) |
36 | 36 | (check-exn exn:fail? (thunk (Sub 'rax (- (add1 (expt 2 31)))))) |
37 | | -(check-not-exn (thunk (Sub 'rax (sub1 (expt 2 32))))) |
| 37 | +(check-not-exn (thunk (Sub 'rax (sub1 (expt 2 31))))) |
38 | 38 | (check-not-exn (thunk (Sub 'rax (- (expt 2 31))))) |
39 | 39 |
|
40 | 40 | ;; Checking literal widths with sub-64-bit registers |
41 | 41 | (check-exn exn:fail? (thunk (Mov 'eax (expt 2 32)))) |
42 | 42 | (check-not-exn (thunk (Mov 'eax (sub1 (expt 2 32))))) |
43 | 43 | (check-exn exn:fail? (thunk (Mov 'al (expt 2 8)))) |
44 | 44 | (check-not-exn (thunk (Mov 'al (sub1 (expt 2 8))))) |
| 45 | +(check-not-exn (thunk (Cmp 'eax (sub1 (expt 2 31))))) |
| 46 | +(check-exn exn:fail? (thunk (Cmp 'al (expt 2 8)))) |
| 47 | +(check-not-exn (thunk (And 'eax (sub1 (expt 2 31))))) |
| 48 | +(check-exn exn:fail? (thunk (And 'al (expt 2 8)))) |
| 49 | +(check-not-exn (thunk (Or 'eax (sub1 (expt 2 31))))) |
| 50 | +(check-exn exn:fail? (thunk (Or 'al (expt 2 8)))) |
| 51 | +(check-not-exn (thunk (Xor 'eax (sub1 (expt 2 31))))) |
| 52 | +(check-exn exn:fail? (thunk (Xor 'al (expt 2 8)))) |
| 53 | +(check-not-exn (thunk (Add 'eax (sub1 (expt 2 31))))) |
| 54 | +(check-exn exn:fail? (thunk (Add 'al (expt 2 8)))) |
| 55 | +(check-not-exn (thunk (Sub 'eax (sub1 (expt 2 31))))) |
| 56 | +(check-exn exn:fail? (thunk (Sub 'al (expt 2 8)))) |
45 | 57 |
|
46 | 58 | ;; Check prog |
47 | 59 | (check-exn exn:fail? (thunk (prog (Ret)))) |
|
0 commit comments