diff options
| author | Richard Qin <richard.qin.001@gmail.com> | 2026-09-15 08:16:43 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.001@gmail.com> | 2026-09-15 08:16:43 +0800 |
| commit | 4022e5c95210631e4aceb08eaf9d9071aa5aefc4 (patch) | |
| tree | a5922559836e45fb3459a3d070367912e1035b1a /tests/sysy_lvX/109_many_params2.sy | |
| download | rcc-master.tar.gz rcc-master.tar.xz | |
Diffstat (limited to 'tests/sysy_lvX/109_many_params2.sy')
| -rw-r--r-- | tests/sysy_lvX/109_many_params2.sy | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/sysy_lvX/109_many_params2.sy b/tests/sysy_lvX/109_many_params2.sy new file mode 100644 index 0000000..c108de4 --- /dev/null +++ b/tests/sysy_lvX/109_many_params2.sy @@ -0,0 +1,48 @@ + +int func(int a, int b[][59], int c, int d[], int e, int f, int g[], int h, int i) +{ + int index = 0; + while (index < 10) { + putint(b[a][index]); + index = index + 1; + } + putch(10); + + putint(d[c]); + putch(10); + + while (i < 10) { + g[i] = h * 128875 % 3724; + i = i + 1; + h = h + 7; + } + + return e + f; +} + +int main() +{ + int a[61][67] = {}; + int b[53][59] = {}; + + a[17][1] = 6; + a[17][3] = 7; + a[17][4] = 4; + a[17][7] = 9; + a[17][11] = 11; + + b[6][1] = 1; + b[6][2] = 2; + b[6][3] = 3; + b[6][9] = 9; + + int ret; + ret = func(a[17][1], b, a[17][3], a[17], b[6][3], b[6][0], b[6], b[34][4], b[51][18]) * 3; + + while (ret >= 0) { + putint(b[6][ret]); putch(32); + ret = ret - 1; + } + putch(10); + return 0; +} |
