Commit Graph

2300 Commits

Author SHA1 Message Date
Jan (janneke) Nieuwenhuizen 678aff53ef
build: Update for mes-0.25.
* build.sh (CPPFLAGS): Remove <prefix>/include/<kernel>/<cpu>
* bootstrap.sh (CPPFLAGS): Likewise.
* build-32.sh (CPPFLAGS): Likewise.
2022-10-29 18:30:18 +02:00
Jan (janneke) Nieuwenhuizen 1b4f281ffc
Add ROADMAP.
TODO
  - setjmp
  - possibly: commented-out HAVE_FLOAT? in tccgen.c
  - integrate ARM ./bootstrap.sh build into commencement.scm
    + build gcc-2.95.3 ...etc, etc.

DONE:

  - ./pre-inst-env guix build --system=armhf-linux -e tcc-boot
  - mes-tcc can be bootstrapped, build and and rebuild itself, until
    boot6-tcc, with long longs and floats
2021-11-16 17:37:46 +01:00
Jan (janneke) Nieuwenhuizen 5fecf71b67
Revert "HACK bootstrap with arm-unknown-linux-gnueabihf-gcc."
This reverts commit c173a80c284d11f4ade5e6b6fa402a22f78bba9f.
2021-12-12 10:45:52 +01:00
Jan (janneke) Nieuwenhuizen 81125144c8
Revert "build-32.sh: Save bootX intermediate results."
This reverts commit af9ef83a3dc59f9456bedeb056fdf8e7d895e6e8.
2021-12-12 10:45:49 +01:00
Jan (janneke) Nieuwenhuizen 8bb4686809
build-32.sh: Save bootX intermediate results. 2021-12-09 12:29:48 +01:00
Jan (janneke) Nieuwenhuizen e879dabc84
HACK bootstrap with arm-unknown-linux-gnueabihf-gcc. 2021-12-05 20:39:57 +01:00
Jan (janneke) Nieuwenhuizen 13faf8acdb
HACK bootstrappable: ARM: "tccgen_ok". 2021-12-05 10:36:56 +01:00
Jan (janneke) Nieuwenhuizen ae201e2da8
HACK bootstrappable: ARM: "tccpp_ok". 2021-12-20 08:20:26 +01:00
Jan (janneke) Nieuwenhuizen b17abf12ef
build: Support building on Guix aarch64-linux. 2021-12-17 21:59:50 +01:00
Jan (janneke) Nieuwenhuizen 985d372400
doc: Update 'README'. 2021-12-21 08:33:46 +01:00
Jan (janneke) Nieuwenhuizen 52a29ab6f5
build: Add support for ARM.
* doit,
bootstrap.sh,
build.sh,
cc.sh: Update and add support for ARM.
* build-x86.sh: Likewise.  Rename to ...
* build-32.sh: ... this.
.gitignore: Remove test output.
2020-08-23 08:37:35 +02:00
Jan (janneke) Nieuwenhuizen b3ee5ea9de
Revert "lotsa debug printing."
This reverts commit 18a9e45500cdaf8dbb34aaab7a4753062a949af6.
2021-12-05 11:20:59 +01:00
Jan (janneke) Nieuwenhuizen ac3e85a317
Revert "lotsa debug printing: reduce"
This reverts commit 412a9bbfc7d041fda021a86853930b3a90374458.
2021-12-05 11:20:56 +01:00
Jan (janneke) Nieuwenhuizen 107521e1b2
lotsa debug printing: reduce 2021-11-15 09:51:27 +01:00
Jan Nieuwenhuizen 2f8a3df88e
lotsa debug printing. 2018-09-30 19:53:44 +02:00
Jan (janneke) Nieuwenhuizen fedd47f0ef
ARM: allow fake asm in functions. 2021-12-06 15:07:25 +01:00
Jan (janneke) Nieuwenhuizen ec24c7801c
bootstrappable: ARM: Force eabi header. 2021-12-20 12:23:28 +01:00
Jan (janneke) Nieuwenhuizen c7e1ef14e5
bootstrappable: HAVE_LONG_LONG, part 3. 2021-12-21 08:18:34 +01:00
Jan (janneke) Nieuwenhuizen 50b5eaeda9
bootstrappable: ARM: HAVE_FLOAT? 2021-12-05 13:21:22 +01:00
Jan (janneke) Nieuwenhuizen 6c6adc6301
bootstrappable: ARM: generate __memcpy, __memmove, __memset.
* tccgen.c (vstore)[BOOTSTRAP && __arm__]: Generate TOK__memove.
(init_putz): Generate TOK__memset.
* tcctok.h[BOOTSTRAP && __arm__]: Add __memcpy, __memmove, __memset.
2021-11-28 20:55:01 +01:00
Jan (janneke) Nieuwenhuizen 93f8a7fcd6
bootstrappable: ARM: HAVE_SETJMP. 2021-11-29 13:08:46 +01:00
Jan (janneke) Nieuwenhuizen f35ddb111e
bootstrappable: HAVE_LONG_LONG_STUB. 2021-12-10 22:48:12 +01:00
Jan (janneke) Nieuwenhuizen 9d88013991
bootstrappable: HAVE_LONG_LONG, part 2. 2021-11-25 21:13:35 +01:00
Jan (janneke) Nieuwenhuizen 94b62e27d9
bootstrappable: ARM: HAVE_FLOAT. 2021-12-05 13:44:07 +01:00
Jan (janneke) Nieuwenhuizen 7b5d1754d3
bootstrappable: ARM: Avoid ternary. 2021-12-06 11:47:49 +01:00
Jan (janneke) Nieuwenhuizen c5c1d6ee70
bootstrappable: ARM: Avoid ternary in argument.
This avoids depending on "70-ternary-arithmetic-argument.c"

* arm-gen.c (gcall_or_jmp): Split calculation and call.
2021-11-15 21:26:20 +01:00
Jan (janneke) Nieuwenhuizen 1a21e8a6ab
bootstrappable: ARM: HAVE_FLOAT. 2021-11-15 12:07:14 +01:00
Jan (janneke) Nieuwenhuizen e23023ec8a
bootstrappable: HAVE_FLOAT, part 2. 2020-12-16 14:28:49 +01:00
Jan (janneke) Nieuwenhuizen 907479d7ff
bootstrappable: Avoid function modulo. 2020-12-13 14:53:32 +01:00
Jan (janneke) Nieuwenhuizen 33403a4011
bootstrappable: Avoid using __clear_cache. 2020-12-13 14:53:31 +01:00
Jan (janneke) Nieuwenhuizen 94fa1710aa
bootstrappable: Use tmp initialization instead of for struct assigment. 2020-12-13 14:53:31 +01:00
Jan (janneke) Nieuwenhuizen 35ccd60989
bootstrappable: Support libtcc1-mes.a. 2020-12-13 14:53:31 +01:00
Jan (janneke) Nieuwenhuizen 0334950c24
Revert "bootstrappable: Handle libtcc1.a."
This reverts commit 274bd060fd.
2020-12-13 14:53:31 +01:00
Jan Nieuwenhuizen 20b1a1d001
README: Update to add info about GNU Mes and bootstrappable-tinycc.
* README: Add header on GNU Mes and bootstrappable-tinycc.
2020-02-22 16:31:24 +01:00
Jan Nieuwenhuizen 6e62e0e58b
makefile: Add dist target.
* Makefile (dist): Create reproducible tarball.
2019-11-17 12:06:06 +01:00
Jan Nieuwenhuizen 17df781f70
Revert "lotsa debug printing."
This reverts commit 09cecc93442f2f3b7dbd1bb5faf18b41f42103ff.
2019-10-10 22:40:48 +02:00
Jan Nieuwenhuizen ba1c47dbdb
lotsa debug printing. 2019-10-10 22:40:47 +02:00
Jan Nieuwenhuizen 0585122eb1
build: Update for mes-0.21. 2019-10-10 22:40:47 +02:00
Jan Nieuwenhuizen f90808b155
build: Update for mes-0.20. 2019-04-06 14:16:30 +02:00
Jan Nieuwenhuizen 1063d5a0dc
bootstrappable: Update tccelf.c for mes-0.20. 2019-04-05 14:13:05 +02:00
Jan Nieuwenhuizen 36c0af218f
build: Support gash. 2019-04-04 21:46:55 +02:00
Jan Nieuwenhuizen ec63de4990
test: run tests/tests2 tests. 2019-04-04 21:46:55 +02:00
Jan Nieuwenhuizen cee58e0963
build: Support building from bootstrap-mes. 2019-04-04 21:46:54 +02:00
Jan Nieuwenhuizen 39de35689e
bootstrappable: Force static link. 2019-04-04 21:46:54 +02:00
Jan Nieuwenhuizen 2b6271d1d5
bootstrappable: Work around MesCC bug.
* tccelf.c (squeeze_multi_relocs): Simplify expressions.
2019-04-04 21:46:54 +02:00
Jan Nieuwenhuizen 379c62d63f
bootstrappable: add tcc.h include guards to include location. 2019-04-04 21:46:54 +02:00
Jan Nieuwenhuizen 274bd060fd
bootstrappable: Handle libtcc1.a. 2018-10-04 09:07:18 +02:00
Jan Nieuwenhuizen 6ae9aa40c7
bootstrappable: Skip tidy_section_headers.
* tccelf.c (elf_output_file)[BOOTSTRAPPABLE]: Skip tidy_section_headers.
2018-10-04 09:07:18 +02:00
Jan Nieuwenhuizen a130ce1702
bootstrappable: HAVE_FLOAT. 2018-10-04 09:07:17 +02:00
Jan Nieuwenhuizen de906df43a
bootstrappable: HAVE_BITFIELD. 2018-10-04 09:07:17 +02:00