aboutsummaryrefslogtreecommitdiff
path: root/tests/asmtest.S
diff options
context:
space:
mode:
authorseyko <seyko2@gmail.com>2016-05-04 17:23:25 +0300
committerseyko <seyko2@gmail.com>2016-05-04 17:23:25 +0300
commit07d896c8e5d1b46bf4aebd403c78e5f7ffebe02a (patch)
treec91a4ef30e175f72b915a3b1520c6abf854d7e63 /tests/asmtest.S
parent2bfedb18675228c3837c23fa523231f55e102c12 (diff)
downloadtinycc-07d896c8e5d1b46bf4aebd403c78e5f7ffebe02a.tar.gz
tinycc-07d896c8e5d1b46bf4aebd403c78e5f7ffebe02a.tar.bz2
sym_push2 optimized for the local_stack case.
A constant expression removed from the loop. If subroutine have 50000+ local variables, then currently compilation of such code takes obly 15 sec. Was 2 min. gcc-4.1.2 compiles such code in 7 sec. pcc -- 3.44 min. A test generator: #include <stdio.h> int main() { puts("#include <stdio.h>"); puts("int main()"); puts("{"); for (int i = 0; i < 50000; ++i) printf("int X%d = 1;\n", i); for (int i = 0; i < 50000; ++i) puts("scanf(\"%d\", &X0);"); puts("}"); return 0; }
Diffstat (limited to 'tests/asmtest.S')
0 files changed, 0 insertions, 0 deletions