Scanner: Many int64 fixes, including performance.

- partially addresses #1209 and #1187
- only query 64-bit extension on seeing use of a 64-bit literal
  (was doing it for every single token)
- correct HLSL acceptance of 64-bit literal syntax (still an int though)
- error on overflow of 32-bit literal type
This commit is contained in:
John Kessenich
2018-01-08 11:48:50 -07:00
parent adc33b23cc
commit c043aadd25
6 changed files with 61 additions and 47 deletions

View File

@@ -51,7 +51,7 @@ ERROR: node is still EOpNull!
0:13 move second child to first child ( temp highp int)
0:13 'OE' ( global highp int)
0:13 Constant:
0:13 1073741823 (const int)
0:13 -1 (const int)
0:14 Sequence
0:14 move second child to first child ( temp highp int)
0:14 'HE' ( global highp int)
@@ -92,7 +92,7 @@ ERROR: node is still EOpNull!
0:34 move second child to first child ( temp highp int)
0:34 'superO' ( global highp int)
0:34 Constant:
0:34 1073741823 (const int)
0:34 -1 (const int)
0:35 Sequence
0:35 move second child to first child ( temp highp int)
0:35 'superI' ( global highp int)
@@ -147,7 +147,7 @@ ERROR: node is still EOpNull!
0:13 move second child to first child ( temp highp int)
0:13 'OE' ( global highp int)
0:13 Constant:
0:13 1073741823 (const int)
0:13 -1 (const int)
0:14 Sequence
0:14 move second child to first child ( temp highp int)
0:14 'HE' ( global highp int)
@@ -188,7 +188,7 @@ ERROR: node is still EOpNull!
0:34 move second child to first child ( temp highp int)
0:34 'superO' ( global highp int)
0:34 Constant:
0:34 1073741823 (const int)
0:34 -1 (const int)
0:35 Sequence
0:35 move second child to first child ( temp highp int)
0:35 'superI' ( global highp int)