dan sinclair | 6931379 | 2024-06-13 20:35:21 +0000 | [diff] [blame] | 1 | |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 2 | void deref_const() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 3 | int3 a = (int(0)).xxx; |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 4 | int b = a.x; |
| 5 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 6 | } |
| 7 | |
| 8 | void no_deref_const() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 9 | int3 a = (int(0)).xxx; |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 10 | int b = a.x; |
| 11 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 12 | } |
| 13 | |
| 14 | void deref_let() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 15 | int3 a = (int(0)).xxx; |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 16 | int i = int(0); |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 17 | int b = a[i]; |
| 18 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 19 | } |
| 20 | |
| 21 | void no_deref_let() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 22 | int3 a = (int(0)).xxx; |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 23 | int i = int(0); |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 24 | int b = a[i]; |
| 25 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 26 | } |
| 27 | |
| 28 | void deref_var() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 29 | int3 a = (int(0)).xxx; |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 30 | int i = int(0); |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 31 | int b = a[i]; |
| 32 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 33 | } |
| 34 | |
| 35 | void no_deref_var() { |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 36 | int3 a = (int(0)).xxx; |
Antonio Maiorano | d032c62 | 2024-09-19 18:20:54 +0000 | [diff] [blame] | 37 | int i = int(0); |
Antonio Maiorano | 4fc7d41 | 2024-10-01 21:50:36 +0000 | [diff] [blame] | 38 | int b = a[i]; |
| 39 | a[int(0)] = int(42); |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 40 | } |
| 41 | |
| 42 | [numthreads(1, 1, 1)] |
| 43 | void main() { |
| 44 | deref_const(); |
| 45 | no_deref_const(); |
| 46 | deref_let(); |
| 47 | no_deref_let(); |
| 48 | deref_var(); |
| 49 | no_deref_var(); |
| 50 | } |
| 51 | |