| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
| |
It produced wrong code with one of my test projects.
This reverts commit cd3d1a45f34be3c9a358f1743bcaf8aac897992e.
|
| |
|
|
|
|
|
|
|
|
| |
array_test is declared and called with no parameters but defined with
one parameter. Compilation succeed (definition is after the use so the
compiler consider the declaration) as well as link (the function exist
and has the right name) but running the test segfault on i386 platforms.
This patch moves the parameter to local variable. If the intention was
to call it with an array parameter then feel free to fix it again.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Make libtest depends on LIBTCC1 instead of ../libtcc1.a and define
LIBTCC1 to $(TOP)/$(LIBTCC1) if LIBTCC1 is defined
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
see http://lists.nongnu.org/archive/html/tinycc-devel/2011-03/msg00005.html
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
- added an example to test suite
- the "warning: assignment discards qualifiers from pointer target type"
is present but harmless
|
| |
|
|
| |
This reverts commit a5a50eaafeea0d3ca47bc8fb6baf983743470c60.
|
| |
|
|
| |
This reverts commit e3e5d4ad7a475e30ea13ad1ba9f23e6210d5d431.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Disable C99 VLA detection when alloca is unavailable and protect the
new reference to TOK_alloca in decl_initializer in order to compile
and run for architecture without working alloca.
Not all code of C99 VLA is commented as it would required many ifdef
stanza. Just the detection is commented so that VT_VLA is never set
any type and the C99 VLA code is compiled but never called. However
vpush_global_sym(&func_old_type, TOK_alloca) in decl_initializer needs
to be protected by an ifdef stanza as well because it uses TOK_alloca.
* include alloca and C99 VLA tests according to availability of
TOK_alloca instead of relying on the current architecture
|
| |
|
|
|
|
|
| |
Implement C99 Variable Length Arrays in tinycc:
- Support VLA with multiple level (nested vla)
- Update documentation with regards to VT_VLA
- Add a testsuite in tcctest.c
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
.align #,0x90 in gas ignores the 0x90 and outputs any kind
of nop it feels like. the one avoided by this patch is a 7
byte nop, which gas has been doing since at least 1999:
http://sourceware.org/ml/binutils/1999-10/msg00083.html
In order to match what gas does, we would need to make
code alignment target-specific, import a lot of code, and
face the question: exactly which gas {version,target,tune}
combo are we trying to match? see i386_align_code in:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-i386.c?annotate=1.460&cvsroot=src
The smart noppery is turned on via the special casing of 0x90
at line 438 in md_do_align in:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-i386.h?annotate=1.1&cvsroot=src
|
| | |
|
| |
|
|
| |
gas does
|
| |
|
|
|
|
|
|
| |
- add __builtin_va_arg_types to check how arguments were passed
- move most code of stdarg into libtcc1.c
- remove __builtin_malloc and __builtin_free
- add a test case based on the bug report
(http://www.mail-archive.com/tinycc-devel@nongnu.org/msg03036.html)
|
| | |
|
| |
|
|
|
|
|
| |
http://repo.or.cz/w/tinycc.git/commit/86ffc4812952f11a35afa19b24a3e6d1a12f4490
removed this cp command. However, it was necessary to pass tests on x86-64
because include/stdarg.h is different from GCC's definition on x86-64.
|
| |
|
|
|
|
| |
win32/64 cross-compilers now build libtcc1.a and install it
together with the windows headers in a 'win32' sub-directory
of TCCDIR.
|
| |
|
|
|
|
|
| |
This bug was reported in
http://lists.gnu.org/archive/html/tinycc-devel/2010-08/msg00050.html
In this case, we should not emit any code when we cast from VT_FUNC to VT_PTR.
|
| |
|
|
|
|
|
| |
- Fix a wrong calculation for size of struct
- Handle cases where struct size isn't multple of 8
- Recover vstack after memcpy for pushing struct
- Add a float parameter for struct_assign_test1 to check SSE alignment
|
| |
|
|
|
|
|
|
| |
configure and gcctestsuite.sh shell scripts contains bashisms although being
bourne shell script. This patch fixes the following bashisms:
* Use of $RANDOM variable (replaced by reading in /dev/urandom)
* Use == in tests instead of just =
* Use $[] for arithmetic computation istead of $(())
|
| | |
|
| | |
|