Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] mob from TinyCC:mob #51

Open
wants to merge 302 commits into
base: mob
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
302 commits
Select commit Hold shift + click to select a range
dd69143
Add builtins ffs, clz, ctz, clrsb, popcount, parity
hermantb Dec 11, 2022
0796920
Fix stab debug problem with common section
hermantb Dec 11, 2022
9cfc8f6
x86asm: Add lzcnt/tzcnt support
minipli-oss Dec 13, 2022
8d3930b
Add dll support for macho
hermantb Dec 16, 2022
d66a62f
Fix dll support macho for x86_64
hermantb Dec 17, 2022
04810db
Allow building lib with gcc/clang
hermantb Dec 17, 2022
f6f3d64
Fix dll support for macho
hermantb Dec 18, 2022
d5f25d1
Add macos clang/ld compiler options
hermantb Dec 20, 2022
909d58d
Add tcc -ar x and t options
hermantb Dec 20, 2022
62d857a
tccgen: better find_field() not found error messages
Dec 22, 2022
da0cc61
Fix bind problem macho
hermantb Dec 22, 2022
03841b6
Update bind problem macho
hermantb Dec 23, 2022
3fd6a05
Fix multiple rpath tccmacho
hermantb Dec 23, 2022
95e3951
Add -Wl,-install_name macOS clang compatible flag as clang refuses -W…
c-jullien Dec 24, 2022
676755f
help: also update main help with tcc -ar options and sort them
Dec 26, 2022
d1fa89a
Fix problem with large section size.
hermantb Dec 27, 2022
7ed9c95
Allow parallel build testsuite
hermantb Dec 27, 2022
78c3ea3
Reduce CString memory usage from 3 to two 2 words
Dec 27, 2022
9957c68
Remove _Static_assert verifying the size of CString because it breaks…
nordlow Dec 27, 2022
d15dec7
tcc -ar: change mode to 644, use ARMAG
Dec 28, 2022
20a22cf
Fix tcc -ar c symbol header size
hermantb Dec 28, 2022
fa0fa62
Makefile: remove unportable -v flag from distclean target
Jan 1, 2023
560526a
Changelog: get started with the changelog since 0.9.27
Jan 1, 2023
79d439e
Allow const expr in builtin_frame_address/builtin_return_address
hermantb Jan 16, 2023
ee3fef2
Fix preprocessor line directive
hermantb Jan 16, 2023
d0efbc5
Fix preprocessor line directive for macos
hermantb Jan 16, 2023
4cccba7
update changelog
Jan 17, 2023
7874397
Don't forget to mention the amazing job made by Herman on native macOS.
c-jullien Jan 17, 2023
4dc7662
Fix preprocessor line directive update
hermantb Jan 17, 2023
b2485d6
Use unsigned int to count sizes for -bench (YARPgen)
winspool Feb 3, 2023
bdec3c5
Use unsigned int to count sizes for -bench (YARPgen) (part 2)
winspool Feb 3, 2023
605538f
Fix sym_scope of typedefs
susematz Feb 22, 2023
29ae3ed
OpenBSD has removed the syscall() function from its libc, so we
ibara Feb 23, 2023
ccc1651
Create scopes for switches/whiles/do-whiles
pskocik Mar 5, 2023
c771cb5
Fix code suppression during nocode_wanted
susematz Mar 7, 2023
3f0a171
Fix init bitfield padding with size 32/64
hermantb Mar 9, 2023
8090925
Fix Makefile install target
hermantb Mar 9, 2023
ec81877
Fix test90 for 32 bits targets
hermantb Mar 9, 2023
2cf3a6e
Fix more jumpopts (in ternary op)
susematz Mar 9, 2023
2cb8bdd
Add attribute nodebug support and skip bitfield padding
hermantb Mar 10, 2023
96b31ba
Fix casted boolean expressions
susematz Mar 10, 2023
ef3eb02
Fix type of cond-op
susematz Mar 10, 2023
88d5c70
Update casted boolean expressions
hermantb Mar 11, 2023
cb3589c
Increase VSTACK_SIZE to 512.
hermantb Mar 11, 2023
cad8739
Fix nocode_wanted in expr_landor
hermantb Mar 11, 2023
7abf2c0
fix: Do not define INCLUDE_STACK_SIZE twice
winspool Mar 11, 2023
5f08561
Revert ""Fix" nocode_wanted in expr_landor"
Mar 11, 2023
19e3e10
small scopes cleanup etc.
Mar 6, 2023
4dc4e93
Fix 128_run_atexit.c on linux
susematz Mar 13, 2023
e215235
configure: OSX/macos: autodetect new_macho value
avih Mar 18, 2023
95aab7d
tests/tcctest.c: Add support for osx with clang 10
hermantb Mar 18, 2023
afa05ca
Ignore _unaligned and __unaligned. Required >15years ago, but still p…
winspool Mar 23, 2023
e7262ac
Print correct values in tcc_print_stats (yarpgen v1)
winspool Mar 23, 2023
b006b98
Fix passing of large function arguments on riscv64
ziyao233 Apr 8, 2023
24c930a
Allow _unaligned and __unaligned on WIN32
hermantb Apr 15, 2023
6a24b76
Do not crach when compiling with libtcc.
hermantb Apr 15, 2023
86f3d8e
tccpp: remove unwanted space with __VA_ARGS__
Apr 6, 2023
19ef024
lib/armeabi.c: fix zero from/to double conversion
Apr 25, 2023
7916cf7
tcc_error_noabort(): always use this unless compiling
Apr 15, 2023
40131b7
MEM_DEBUG thread-safe & tccdbg leakless
Apr 15, 2023
a045400
CStrings leakless
Apr 24, 2023
bb93bf8
stuff & etc..
Mar 31, 2023
0ec3a40
about CONST_WANTED & VT_NONCONST
Mar 12, 2023
a46372e
Add support for constant float compare
hermantb May 22, 2023
da3a763
Small patch to allow for the TCC.EXE (and TCCLIB.DLL) to reside in a …
waltje May 27, 2023
583c3b4
Update to previous patch (remove the strcpy.)
waltje May 30, 2023
5077d4c
change which to command -v
Un1q32 Jun 12, 2023
30fd24a
Allow different names for pragma once
hermantb Jun 25, 2023
4e363a1
Small update on pragma once
hermantb Jun 26, 2023
c92f4f5
Update pragma once for file operations
hermantb Jun 26, 2023
a82aff3
Fix invalid load generated by gfunc_return()
ziyao233 Jul 1, 2023
5b28165
Fix test 131 for 32 bits targets
hermantb Jul 5, 2023
fd6d218
Align stack when returning structs.
hermantb Jul 31, 2023
022fb42
tccpp: #pragma once normalized
Jun 26, 2023
c29420a
tccgen: update "Fix invalid load generated by gfunc_return()"
Jul 31, 2023
e70fec8
riscv64-tok.h: update with more instructions from the spec
CorruptedVor Aug 10, 2023
d1c1077
riscv64-asm.c: add jal/jalr
CorruptedVor Aug 10, 2023
598134f
Undo part of incr_offset patch.
hermantb Aug 30, 2023
b50a0bd
Add bound checking for test 132
hermantb Aug 30, 2023
ff2a372
Add tcov support in Makefile
hermantb Aug 31, 2023
3f3cbb5
bcheck: remove "tcc_location()" & x86_64 double fix
Aug 30, 2023
cd75ca6
stuff & fixes
Jun 3, 2023
4520454
win32: pe dwarf sections & option -g.pdb
Jun 18, 2023
8c5fe87
tcc -g1 : small debug info (lines/functions only)
Sep 6, 2023
086870a
configury update & bump VERSION to 0.9.28rc
Sep 6, 2023
9bb9a04
Small fixes
hermantb Sep 7, 2023
31206a5
Fix tests/tests2/Makefile for win32
hermantb Sep 7, 2023
7f39b4f
Fix typo in atomic_compare_exchange_weak()
SergeGris Sep 9, 2023
3d12804
include/tccdefs: Add function renaming with __REDIRECT_NTHNL (0.9.28r…
winspool Sep 17, 2023
b214fb6
Produce better error message on malformed while loop
Oct 4, 2023
08c7770
Support aliasing static global nonfunction objects
pskocik Oct 8, 2023
f44060f
ELF Relocatable: make undefined global symbol STT_NOTYPE
sylware Oct 24, 2023
6b967b1
Fix macOS .dylib build when VERSION contains letters.
Oct 26, 2023
32c4df1
tccelf: Do not load all referenced libraries when linking a library
winspool Oct 26, 2023
fd775d9
arm64-gen.c: Add __AARCH64EL__ target_machine_defs.
rdoeffinger Oct 29, 2023
e9aa113
tccdefs.h: Apple target requires __has_builtin definition.
rdoeffinger Oct 29, 2023
1bfed06
Relicensing TinyCC
rdoeffinger Oct 29, 2023
7a53029
Add -MP option.
rdoeffinger Oct 29, 2023
32ac236
Add support for -dumpmachine option.
rdoeffinger Oct 29, 2023
ece74ce
tests: Add support for codesigning command.
rdoeffinger Oct 29, 2023
a473473
stdatomic.h: Add ATOMIC_VAR_INIT macro.
rdoeffinger Oct 29, 2023
b7c732f
tcctools: delete created ar file on error.
rdoeffinger Oct 29, 2023
36f53cd
Revert "tests: Add support for codesigning command."
rdoeffinger Oct 30, 2023
2c1c20a
Relicensing TinyCC
sdaoden Oct 31, 2023
be8cded
Allow make tcov-test on bsd targets
hermantb Nov 8, 2023
bf928f3
Allow libtcc1-usegcc in lib/Makefile
hermantb Nov 8, 2023
0f29dbc
Update do_debug handling
hermantb Nov 8, 2023
ded713e
Ignore as_needed in ld_add_file_list
hermantb Nov 8, 2023
fc8c018
Fix STT_NOTYPE problem on win32
hermantb Nov 8, 2023
be8f894
Check for errors before codesign
hermantb Nov 8, 2023
fb164e0
Error out for incomplete type initialisation
bobrippling Nov 26, 2023
7032862
riscv64-asm.c: added asm_emit_j (J-type), changed jal to J-type
CorruptedVor Nov 26, 2023
c45cb65
tcctools.c: reduce duplicated code for -MP option.
rdoeffinger Oct 30, 2023
0655fd9
configure: enable codesign by default on macOS.
rdoeffinger Nov 27, 2023
81a32ec
riscv64-asm.c: asm_emit_j: correct check of immediate
CorruptedVor Dec 2, 2023
d87801b
riscv64-asm.c: implement C extension
CorruptedVor Dec 2, 2023
c71415b
riscv64 elf flags should be configurable
CorruptedVor Dec 7, 2023
275dfbe
riscv64-asm.c: implement M extension
CorruptedVor Dec 8, 2023
279dbb9
riscv64-asm.c: correct check for 12-bit immediate
CorruptedVor Dec 8, 2023
3b3c941
riscv64-asm.c: implement Zicsr extension
CorruptedVor Dec 9, 2023
5dc241f
riscv64-tok.h: add Zicsr pseudoinstructions, registers
CorruptedVor Dec 10, 2023
b390fee
riscv64-asm.c: add Zicsr registers
CorruptedVor Dec 10, 2023
ada17a0
riscv64-asm.c: add support for calculating addresses of symbols
CorruptedVor Dec 10, 2023
4879896
Update riscv64-asm prototypes
hermantb Dec 16, 2023
6379f2e
Preprocessor fix + new testcase
hermantb Dec 29, 2023
c13bbb5
Add type promotion in comma expression and update testcase 94
hermantb Jan 6, 2024
2701dcf
Add some relocations to riscv64-link.c
hermantb Jan 7, 2024
6120656
Rewrite gexpr a bit
hermantb Jan 8, 2024
04365dd
riscv64-asm.c: fix assembly instruction with negative immediate offsets.
stikonas Jan 12, 2024
bbe2e5a
Allow declarations in case statement
hermantb Jan 16, 2024
0059d89
Prepare for gcc 14
hermantb Jan 16, 2024
7d1bbc8
Update for clang
hermantb Jan 17, 2024
7f0a28f
C23: Implement declaration after label
hermantb Jan 28, 2024
c726357
riscv64-gen: Fix `load` and `store` type_size usage
ekaitz-zarraga Jan 20, 2024
6426cc3
Revert "riscv64-gen: Fix `load` and `store` type_size usage"
ekaitz-zarraga Jan 30, 2024
da0d439
review recent commits
Feb 4, 2024
105d70f
atomic_load/atomic_store : to ensure return the latest value, should …
kbkpbot Feb 5, 2024
be6584e
Allow use of a custom allocator in libtcc
Feb 6, 2024
cd6ad85
Fix default_reallocator declaration
hermantb Feb 7, 2024
76d6051
add MemoryBarrier marco define; tested gcc msvc
kbkpbot Feb 8, 2024
a0ab991
Pointer diff should use signed size
hermantb Feb 9, 2024
b671fc0
LIBTCCAPI tcc_relocate(s) : REMOVED 2nd argument
Feb 7, 2024
7b9f19e
tccpp: macro cleanup
Feb 9, 2024
a7cd016
tccrun: 'tcc_relocate()' twice no longer supported
Feb 11, 2024
f2e8b2a
bcheck: fix argument order for memalign
winspool Feb 14, 2024
8d8d75c
Allow tcc to run with bounds checking enabled
hermantb Feb 15, 2024
c88b199
tccrun: exit() via rt_longjmp()
Feb 14, 2024
d2f8cea
tccrun: review last changes
Feb 16, 2024
4e91d38
tccrun: resign from "advanced" system calls (memaligh/gettid)
Feb 21, 2024
f9cb198
tccrun: update for apple and openbsd
hermantb Feb 26, 2024
2656f8e
Fix win64 noreturn problem
hermantb Feb 28, 2024
7bc0cb5
riscv: Implement large addend for global address
ekaitz-zarraga Feb 26, 2024
42395a1
tccrun: PAGEALIGN'ed mprotect
Feb 29, 2024
9675c1e
Use CONFIG_RUNMEM_RO=1 on apple
hermantb Mar 3, 2024
ca061f3
i386-asm: fix pc-relative label ariths
Mar 2, 2024
9d2068c
tccrun: add option CONFIG_RUNMEM_RO=2
Mar 3, 2024
2b0a663
libtcc usability improvements
Mar 11, 2024
019d10f
riscv: Move operand parsing to a separate function
ekaitz-zarraga Mar 19, 2024
8cbbd2b
riscv: Use GAS syntax for loads/stores:
ekaitz-zarraga Mar 19, 2024
8bfef6a
riscv: Add pseudoinstructions
ekaitz-zarraga Mar 19, 2024
409007c
riscv: jalr: implement pseudo and parse like GAS
ekaitz-zarraga Mar 20, 2024
e2d8eb3
riscv: jal: Add pseudo instruction support
ekaitz-zarraga Mar 20, 2024
3782da8
riscv: Support $ in identifiers in extended asm.
ekaitz-zarraga Mar 21, 2024
618c173
riscv: libtcc1.c support some builtins for __riscv
ekaitz-zarraga Mar 21, 2024
cbe70fa
riscv: Add .option assembly directive (unimp)
ekaitz-zarraga Mar 20, 2024
0239133
fixup! riscv: Add .option assembly directive (unimp)
ekaitz-zarraga Mar 23, 2024
e02eec6
riscv: fix jal: fix reloc and parsing
ekaitz-zarraga Mar 26, 2024
6b3cfdd
riscv: Add extended assembly support
ekaitz-zarraga Mar 17, 2024
4944f50
riscv: Avoid some compiler warnings
hermantb Apr 13, 2024
0703df1
Fix Extended Asm ignored constraints
ekaitz-zarraga Apr 15, 2024
c994068
riscv: asm: Add load-reserved and store-conditional
ekaitz-zarraga Apr 23, 2024
671d03f
riscv: Add full `fence` instruction support
ekaitz-zarraga Apr 23, 2024
1597763
riscv: asm: Add branch to label
ekaitz-zarraga Apr 23, 2024
8baadb3
riscv: asm: implement `j offset`
ekaitz-zarraga Apr 25, 2024
0aca861
fixup! riscv: Implement large addend for global address
ekaitz-zarraga Apr 27, 2024
da5aa7d
win32: wincon.h: support more console mode flags
avih May 12, 2024
8cd21e9
Address of solved for riscv64
hermantb Jun 1, 2024
3b943be
implemented thiscall by copying logic from fastcall
gynt Jun 3, 2024
6b78e56
div fixes
Jun 11, 2024
08a4c52
tccpp: tcc_warning("extra tokens after directive")
Mar 22, 2024
c85efac
feat: treat unknown macros with arguments as undefined
JonathanWilbur Jul 30, 2024
e4d874d
fix: code in non-executable ELF sections
JonathanWilbur Jul 30, 2024
f15008d
fix: previous two commits
JonathanWilbur Jul 31, 2024
1cee090
fix: tests broken by use of assembly
JonathanWilbur Jul 31, 2024
3d65c59
tcc -dumpmachine: output -musl instead of -gnu when TCC_MUSL is defined
CorruptedVor Aug 10, 2024
3415dec
riscv64-tok.h: don't export internal macros
CorruptedVor Aug 10, 2024
3d963ae
Relicensing TinyCC
CorruptedVor Aug 11, 2024
12acbf3
tccdbg.c: DW_AT_language now matches the -std option
mxlgv Aug 20, 2024
b8b6a5f
fix UB in constant folding of double -> signed integer conversion
Guest0x0 Sep 14, 2024
3ead10d
fix: respect CFLAGS from environment, or set defaults
Sep 27, 2024
3110f69
update Github action runner macOS to 12
mengzhuo Oct 8, 2024
b668b72
recognize -std=gnu11 and treat it the same as -std=c11
pskocik Oct 9, 2024
c21576f
Emit better x86_64 asm for constant loads
bnoordhuis Oct 10, 2024
45cff8f
tccelf.c: write section headers before sections
Oct 9, 2024
7a6f3fd
include/tccdefs.h: has_atttribute -> attribute (fixes 45cff8f03fe5)
sdaoden Oct 20, 2024
5a467dd
Move sort_syms to avoid linker error
hermantb Oct 20, 2024
d7f9166
Fix last commit.
hermantb Oct 20, 2024
9fb89c2
tcc -ar: pad archive member position to even
Oct 14, 2024
e1c8d3a
win32: include/sys/types.h: add useconds_t
avih Oct 23, 2024
45788e9
win32: make #include <unistd.h> work
avih Oct 23, 2024
4f7b830
win32: tcc-win32.txt: add note about mingw includes
avih Oct 23, 2024
c7bf40b
win32: tcc-win32.txt: fixup mingw includes note
avih Oct 23, 2024
d9f1836
win32: tcc-win32.txt: fixup 2 mingw includes note
avih Oct 23, 2024
50cfe11
fix -section-alignment smaller than ELF header size
Oct 24, 2024
6acf301
x86_64-asm.h: support callq for better compat
notgull Oct 27, 2024
a21b5f1
x86_64-asm: support endbr64 instruction
notgull Oct 27, 2024
322c4dc
Add support for backtrace()
hermantb Nov 9, 2024
233e22f
Fix compile problem on windows
hermantb Nov 9, 2024
f0cd0fb
Print bound region when bound checking error occurs
hermantb Nov 9, 2024
c717bac
tccgen: show useful line number with duplicate switch-case
Nov 17, 2024
f24727b
tcc -freverse-funcargs (reverse evaluation)
Nov 17, 2024
3eb6352
tcc -fgnu89-inline -fno-asynchronous-unwind-tables
Nov 17, 2024
dd2e5f8
tccelf: cleanup sort_sections() & etc. fixes
Nov 17, 2024
00b29f4
win32: mingw headers: mainly add LOAD_LIBRARY* values
avih Nov 1, 2024
cff8143
win32: 32 bit: allow 64 bit time via __MINGW_USE_VC2005_COMPAT
avih Nov 17, 2024
ef7e844
Fixing preprocessor edge case preventing building with meson https://…
Nov 20, 2024
a6ef318
tcc -ar options: use strchr, strpbrk (trivial, no-op)
avih Nov 21, 2024
1cf33fe
w32: improve quoting when spawning cross-compiler
avih Nov 20, 2024
085e029
fix typos in comments
avih Nov 22, 2024
249a0b6
win32: add minimal mingw header shellapi.h
avih Nov 30, 2024
4b04028
tccgen: C2x 'enum <tag> : <type> ...'
Nov 21, 2024
729918e
make: make shorter command lines
Nov 21, 2024
cea857b
configure: win32: don't fail when building using tcc
avih Dec 2, 2024
05ebe49
configure: avoid non-POSIX: test ... -a/-o ...
avih Dec 3, 2024
6f4b384
configure: avoid non-POSIX: local var=...
avih Dec 2, 2024
2127206
configure: avoid boilerplate: var=`echo $opt | ...`
avih Dec 2, 2024
ab6e750
configure: avoid boilerplate: confvars="$confvars ..."
avih Dec 2, 2024
9289c6c
configure: confvars: warn/error on bad key or value
avih Dec 4, 2024
c45559e
configure: handle spaces correctly in $source_path
avih Dec 4, 2024
126b1ff
configure: win32: error only once about 'ln failed'
avih Dec 4, 2024
3158287
configure: --config-mingw32: clarify values, simplify code
avih Dec 2, 2024
a522213
tccpe.c: never assume static system libtaries
Dec 4, 2024
d440ed8
lib/Makefile: fix out-of-tree build of lib/bt-exe.c
avih Dec 6, 2024
68c8c35
Avoid Invalid relocation and section conflict on bsd.
hermantb Dec 12, 2024
0ce0533
add AddVectoredContinueHandler and AddVectoredExceptionHandler to ker…
Dec 12, 2024
ea75d5c
Add symver support for FreeBSD >= 14
hermantb Dec 12, 2024
b776bfa
Define LDBL_MAX_10_EXP for aarch64, riscv
Keith-S-Thompson Dec 11, 2024
8620a31
tcc -run file.c : pass original exit code from file.c again
Dec 13, 2024
34b7b2c
Add lib/builtin.c to win32/build-tcc.bat
Dec 15, 2024
af1cfd9
fix x86_64/i386 gfunc_call, when arg is VT_STRUCT, need fetch cpu fla…
kbkpbot Dec 26, 2024
90ae383
x86_64/i386: Add missing fetch CPU flag
kbkpbot Dec 26, 2024
c6afdff
Aligb section at end in tcc_load_object_file
hermantb Dec 27, 2024
eef2db7
revert commit b8b6a5fd7b4e8cab8e5a5d01064cf5bf2b5eed95
kbkpbot Dec 30, 2024
68000c0
Print correct values for testcase 134 on all targets
hermantb Dec 30, 2024
999ec46
Allow macro in #line directive
hermantb Jan 5, 2025
f6385c0
Use TOK_PPNUM/TOK_PPSTR instead of TOK_CINT/TOK_STR
hermantb Jan 6, 2025
f8bd136
Update tcc-doc.texi: bring in line with `tcc -hh' output
el-remph Feb 8, 2025
ec60d28
Add -Wl,-I and -Wl,-dynamic-linker options
el-remph Feb 6, 2025
1747b45
Fix -Wl,-nostdlib behaviour for compatibility with other compilers
el-remph Feb 7, 2025
6ec4a10
Process linker directives beginning with a colon
el-remph Feb 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 104 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
name: build and test

on:
push:
branches: [ mob ]

jobs:
test-x86_64-linux:
runs-on: ubuntu-20.04
timeout-minutes: 2
steps:
- uses: actions/checkout@v4
- name: make & test tcc (x86_64-linux)
run: ./configure && make && make test -k

test-x86_64-osx:
runs-on: macos-13
timeout-minutes: 2
steps:
- uses: actions/checkout@v4
- name: make & test tcc (x86_64-osx)
run: ./configure && make && make test -k

test-aarch64-osx:
runs-on: macos-14
timeout-minutes: 2
steps:
- uses: actions/checkout@v4
- name: make & test tcc (aarch64-osx)
run: ./configure && make && make test -k

test-x86-win32:
runs-on: windows-2019
timeout-minutes: 6
steps:
- uses: actions/checkout@v4
- name: make & test tcc (x86_64-win32)
shell: cmd
run: |
set MSYS2_PATH_TYPE=inherit
set MSYSTEM=MINGW64
set CHERE_INVOKING=yes
C:\msys64\usr\bin\bash -l -c "./configure && make && make test -k"
- name: make & test tcc (i386-win32)
shell: cmd
run: |
set MSYS2_PATH_TYPE=inherit
set MSYSTEM=MINGW32
set CHERE_INVOKING=yes
C:\msys64\usr\bin\bash -l -c "./configure && make clean all && make test -k"

test-armv7-linux:
runs-on: ubuntu-20.04
timeout-minutes: 6
steps:
- uses: actions/checkout@v4
- uses: uraimo/run-on-arch-action@v2
name: make & test tcc (armv7-linux)
with:
arch: armv7
distro: ubuntu20.04
githubToken: ${{ github.token }}
install: |
apt-get update -q -y
apt-get install -q -y gcc make
run: |
echo "::endgroup::" && echo "::endgroup::" # missing in 'run-on-arch-action'
./configure && make && make test -k

test-aarch64-linux:
runs-on: ubuntu-20.04
timeout-minutes: 6
steps:
- uses: actions/checkout@v4
- uses: uraimo/run-on-arch-action@v2
name: make & test tcc (aarch64-linux)
with:
arch: aarch64
distro: ubuntu20.04
githubToken: ${{ github.token }}
install: |
apt-get update -q -y
apt-get install -q -y gcc make
run: |
echo "::endgroup::" && echo "::endgroup::" # missing in 'run-on-arch-action'
./configure && make && make test -k

test-riscv64-linux:
runs-on: ubuntu-20.04
timeout-minutes: 6
steps:
- uses: actions/checkout@v4
- uses: uraimo/run-on-arch-action@v2
name: make & test tcc (riscv64-linux)
with:
arch: riscv64
distro: ubuntu20.04
githubToken: ${{ github.token }}
install: |
apt-get update -q -y
apt-get install -q -y gcc make
run: |
echo "::endgroup::" && echo "::endgroup::" # missing in 'run-on-arch-action'
./configure && make && make test -k
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
a.out
tcc_g
tcc
tcc_c
tcc_p
*-tcc
libtcc*.def

Expand All @@ -29,6 +31,7 @@ tags
TAGS
tcc.1
*.pod
*.tcov
tcc-doc.html
tcc-doc.info

Expand All @@ -45,6 +48,9 @@ win32/include/stddef.h
win32/include/stdnoreturn.h
win32/include/varargs.h
win32/include/tcclib.h
win32/include/tccdefs.h
win32/include/stdatomic.h
win32/include/tgmath.h

tests/tcctest[1234]
tests/tcctest.gcc
Expand Down
24 changes: 24 additions & 0 deletions Changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,27 @@
version 0.9.28:

User interface:
- -b : bounds checker much improved (herman ten brugge)
- -bt : support for standalone backtraces also (grischka)
- -gdwarf : debug format (herman ten brugge)
- -M, -MM, and -MMD (Arthur Williams)
- -W[no-]error=<option> (Steffen Nurpmeso)

Platforms:
- new RISC-V (riscv64) target (Michael Matz)
- native macOS support for x86_64 (Michael Matz, Herman ten Brugge)
- arm and riscv64 assemblers (Danny Milosavljevic)
- Android support with position independent executables (grischka)

Features:
- _Static_assert() (matthias)
- __attribute__ ((cleanup(func))) (matthias)
- stdatomic (Dmitry Selyutin)
- asm goto ("jmp %l[label]" : : : : label) (Michael Matz)

Fixes:
- ... many, see git shortlog release_0_9_27...release_0_9_27

Version 0.9.27:

User interface:
Expand Down
Loading