Commit Graph

205 Commits

Author SHA1 Message Date
Andrius Štikonas a900bc6632 Implement C99 negation.
!a is 1 if a == 0 and 0 otherwise.
2021-10-29 00:52:29 +01:00
Jeremiah Orians d8fb878d7a
Correct #define behavior inside of #if/#elif/#else/#endif blocks 2021-10-27 22:22:49 -04:00
Jeremiah Orians 55929d4ddf
Catch segfault for half defined #defines and provide a warning for #unkowns 2021-10-21 21:27:16 -04:00
Jeremiah Orians 67786705a5
Update M2libc for more efficient RISC-V syscalls 2021-10-21 21:10:53 -04:00
Jeremiah Orians ffe4e5f66e
better validate arguments passed 2021-10-04 20:49:44 -04:00
Jeremiah Orians ae9e700592
Release_1.9.0 2021-10-03 09:34:22 -04:00
Andrius Štikonas 56ee526c4c Implement support for large immediates on RISC-V. 2021-10-03 11:37:03 +01:00
Jeremiah Orians 5e74995c13
Catch truncated function calls and truncated array statements 2021-10-02 22:02:39 -04:00
Jeremiah Orians 0577243444
Fix Problem with global arrays #18 2021-10-02 10:38:04 -04:00
Jeremiah Orians 4af9b79c1b
restore removed test checksums 2021-10-02 08:24:07 -04:00
Andrius Štikonas bbf67601e1 Add tests for riscv64. 2021-10-02 13:13:15 +01:00
Andrius Štikonas ae48dbd6cb Add riscv64 port. 2021-10-02 11:59:21 +01:00
Jeremiah Orians 7fb9d682ec
Update M2libc to enable RISC-V Development 2021-09-30 20:10:28 -04:00
Jeremiah Orians 745998ac13
Fix global array initialization to allocate the correct amount of memory 2021-06-26 11:58:13 -04:00
Jeremiah Orians 99df87bc0d
Breakup program to reduce complexity and risk of errors 2021-06-26 11:51:54 -04:00
Jeremiah Orians b37dfc7b12
Report proper error message for negative global array values. Thank you melg8 2021-06-26 10:53:45 -04:00
Jeremiah Orians 51dfec1791
Fixed Global buffer overflow in collect_weird_string thanks to Melg8 2021-06-23 18:57:56 -04:00
Jeremiah Orians a3c14bcd1b
Fixed Memory leak, thanks melg8 2021-06-23 07:58:11 -04:00
Jeremiah Orians 8bc09f2b2e
Fixed hang on large global arrays. Thanks melg8 2021-06-23 07:32:40 -04:00
Jeremiah Orians da542698e7
Fix all special cases where line number was wrong 2021-05-28 23:27:17 -04:00
Jeremiah Orians cece07145c
Update checksums to reflect new cc_types.c code in test1000 2021-05-02 10:52:29 -04:00
Jeremiah Orians d80d8a652b
Move more functionality into M2libc 2021-04-03 22:41:52 -04:00
Jeremiah Orians 46cf81af83
Replace file_print with fputs 2021-04-03 18:56:55 -04:00
Jeremiah Orians b0b440c2df
Update M2libc to fix fflushing of buffers at exit or return from main 2021-02-21 21:00:34 -05:00
Jeremiah Orians 163dab268c
Merge remote-tracking branch 'deesix/TMP' 2021-02-17 23:01:23 -05:00
Jeremiah Orians 37ca8e3df9
Remove test/common_x86 files and switch x86 to M2libc 2021-02-17 22:01:28 -05:00
Jeremiah Orians 32ef09f964
Update M2libc and update known_issues.org 2021-02-06 13:40:28 -05:00
Jeremiah Orians fc4c1998aa
Remove test/common_knight/ files and switch knight-posix to M2libc 2021-02-06 00:45:32 -05:00
Jeremiah Orians a9d88e8e6c
Add support for -D variable and -D variable=value 2021-02-05 21:34:00 -05:00
Jeremiah Orians 8007ae9ce6
Add support for #if defined(__M2__) to enable M2-Planet specific functionality 2021-02-05 20:39:54 -05:00
Jeremiah Orians 62eedce858
Remove test/common_aarch64 files and switch AArch64 to M2libc 2021-02-05 15:54:38 -05:00
Jeremiah Orians a65619dbf4
Remove test/common_knight/*native files and switch knight-native to M2libc 2021-02-03 19:47:18 -05:00
Jeremiah Orians ba1fc44f29
Remove test/common_armv7l files and switch armv7l to M2libc 2021-02-03 07:30:15 -05:00
Jeremiah Orians 695672985e
Remove test/common_amd64 files and switch amd64 to M2libc 2021-02-03 00:32:47 -05:00
Jeremiah Orians 6f8e2eb905
Removed need for fixup 2021-02-02 23:39:27 -05:00
deesix f865e47646 @@@ tests: aarch64 test0100 using debug ELF header
It was using the non-debug one but the rest of the compilation chain is
done with debug in mind.
2021-01-31 00:00:00 +01:00
deesix 1a9bbe6e63 @@@ tests: same --debug behaviour for all scripts of the same test
Until now, a few scripts compiled the test program with/without debug,
differently to the rest.
2021-01-31 00:00:00 +01:00
Jeremiah Orians c5068b227a
Add support for &global_variable 2021-01-28 22:22:08 -05:00
Jeremiah Orians f2094a9e5b
Migrate knight-posix to M2libc 2021-01-22 00:35:43 -05:00
Jeremiah Orians 3c6b23f734
Update M2libc to remove duplicate opens 2021-01-21 22:41:23 -05:00
deesix 818784228c Use M2libc in all x86 tests < test1000 2021-01-21 00:00:00 +01:00
deesix e660caca73 Use M2libc in all armv7l tests < test1000 2021-01-21 00:00:00 +01:00
deesix 7860378b75 Use M2libc in all amd64 tests < test1000 2021-01-21 00:00:00 +01:00
deesix 55db771e29 tests: get proof from test0025 stderr (and other minor fixes)
We were checking an empty proof because the test writes to stderr and we
were redirecting stdout to the file. With the correct redirection the hash
is different, so proof.answer is also adjusted.

The x86 test was calling blood-elf with the 64bits flag. Removed to ask for
32bits behaviour.

For consistency, --BaseAddress is now using the usual value for the arch.

Also, unused input file is removed here.
2021-01-17 00:00:00 +01:00
deesix bcd0f49859 Use M2libc in all AArch64 tests < test1000
Finally test0021, now that M2libc has getcwd.

See b83086642e
2021-01-15 00:00:00 +01:00
Jeremiah Orians 4def464475
Merge remote-tracking branch 'yt/array' 2021-01-10 20:07:38 -05:00
Jeremiah Orians 768f229c1d
Updated M2libc 2021-01-10 18:29:28 -05:00
Sanne Wouda 0e3d5b609a Add support for global char foo[12]; definitions
- only enabled in --bootstrap-mode

- allocates space for both the char array and the pointer to the start of
  the array
2021-01-10 23:01:08 +00:00
Sanne Wouda b83086642e Use M2libc in nearly all AArch64 tests
- disables --bootstrap-mode where it was enabled, except for test1000
  which needs to build in bootstrap-mode to check that M2-Planet can be
  compiled by cc_*

- the only hold-out is test0021 which needs getcwd which is missing in
  M2libc

- note that test0106 needs a fix to fgetc or it will never notice it has
  reached the end of stdin
2021-01-10 22:02:29 +00:00
Sanne Wouda dd1f5db9f1 Port AArch64 test0008 to M2libc 2021-01-10 17:50:04 +00:00