Commit Graph

304 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
Jeremiah Orians 8c3fa49936
Breaking update in blood-elf 2021-10-02 07:09:46 -04: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 3bac25a1ac
Fix issues with HACKING document 2021-06-23 20:12:20 -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 a925f90c3b
Preparing for next release cycle 2021-06-08 23:10:22 -04:00
Jeremiah Orians 0c1c22bc2f
Release_1.8.0 2021-06-08 23:05:36 -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
Jan (janneke) Nieuwenhuizen d223581d4e Skip "extern" in type definitions.
This makes supporting gcc >= 10 easier in GNU Mes.

* cc_types.c (type_name): Skip "extern".
2021-05-02 16:14:53 +02: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 5f8484e683
Move self-hosting test to use M2libc 2021-02-17 21:40:59 -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 17c4c6b977 @@@ tests: -e (errexit) shell option in scripts, where possible
Some test scripts run programs that return non-zero values for correct
outcome; those would fail the shell -e checks.

But some scripts not using -e are fine with it because we expect zero or
the error condition is handled otherwise. So, for robustness, the option is
added into them.
2021-01-31 00:00:00 +01:00
deesix cb27e5314a @@@ remove scripts 2021-01-31 00:00:00 +01:00
deesix dd67ccddce @@@ ARCH_IS_64_BITS
In three scripts, we need to adjust the expected value check depending on
the word size of the arch.

We do it based on a this new var.
2021-01-31 00:00:00 +01:00
deesix 3400296b9b @@@ BLOOD_ELF_WORD_SIZE_FLAG 2021-01-31 00:00:00 +01:00
deesix 05d962fcfc @@@ unify 64 bits archs (run_test.sh) 2021-01-31 00:00:00 +01:00
deesix fb5bae96ab @@@ tests: source new test/env.inc.sh
... which sets, given the ARCH, the following vars:

 BASE_ADDRESS
 ENDIANNESS_FLAG
2021-01-31 00:00:00 +01:00
deesix ab055a8823 @@@ tests: ARCH var in non-Knight scripts 2021-01-31 00:00:00 +01:00
deesix 6bb784eae5 tests: minor tweaks in comments 2021-01-31 00:00:00 +01: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