Joe Soroka
cf08675702
weak definitions overrule non-weak prototypes
2011-02-01 09:41:03 -08:00
Joe Soroka
4d5105c8f1
support weak attribute on variables
2011-02-01 00:37:53 -08:00
Joe Soroka
6839382480
asmtest: avoid testing against complex nop alignment in gas
...
.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
2011-01-23 16:46:24 -08:00
Joe Soroka
2047f88334
i386-asm: accept retl as a synonym for ret
2011-01-21 01:35:28 -08:00
Joe Soroka
f43fafc680
accept multiple comma separated symbols for .globl/.global directives, like gas does
2011-01-20 02:00:50 -08:00
Shinichiro Hamaji
0ed7ba3f5e
Support struct arguments with stdarg.h
...
- 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 )
2010-12-28 19:32:40 +09:00
Shinichiro Hamaji
83f0a7b6f8
Test va_copy in tcctest.c
2010-12-28 17:53:56 +09:00
Shinichiro Hamaji
f2d7998a96
Copy tcclib.h to tests directory so GCC uses its own headers.
...
86ffc48129
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.
2010-12-07 03:04:45 +09:00
grischka
86ffc48129
make: new lib/Makefile for libtcc1.a on more platforms
...
win32/64 cross-compilers now build libtcc1.a and install it
together with the windows headers in a 'win32' sub-directory
of TCCDIR.
2010-12-04 16:47:08 +01:00
Shinichiro Hamaji
c31dc7aa0c
Fix casts from 32bit integer types to 64bit integer types.
...
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.
2010-08-31 08:35:31 +09:00
Shinichiro Hamaji
1f6781f0ee
Fix alignment around struct for SSE.
...
- 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
2010-08-27 02:32:19 +09:00
Thomas Preud'homme
dc265feb63
Fix bashims in configure and gcctestsuite.sh.
...
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 $(())
2010-05-26 14:08:29 +02:00
grischka
903b6001e7
update Makefiles
2009-12-20 20:34:35 +01:00
grischka
8bbde91f62
tcc_relocate: revert to 0.9.24 behavior
2009-12-19 22:16:23 +01:00
Shinichiro Hamaji
3a1380120d
x86-64: change the type of size_t and ptrdiff_t.
...
size_t and ptrdiff_t should be unsigned long and long, respectively.
2009-08-24 13:30:03 +02:00
grischka
fc977d56c9
x86-64: chkstk, alloca
2009-07-18 22:06:54 +02:00
grischka
045cff28fe
fix asmtest (somehow), update Makefiles
2009-07-18 21:54:51 +02:00
grischka
0085c648f6
bcheck: restore malloc hooks when done
2009-07-18 21:54:47 +02:00
grischka
110a4edc15
drop alloca #define
...
(Because GNU's alloca.h unconditionally #undef's alloca)
Also, remove gcc specific sections in headers. and
instead change tests such that gcc does not use them.
2009-05-16 22:30:13 +02:00
grischka
15626621fb
cleanup makefiles
2009-04-19 21:24:32 +02:00
Shinichiro Hamaji
48ae0c0468
Fixes for tests/Makefile.
...
- On x86-64, we need $(TARGET) in RUN_TCC.
- s/RuN_TCC/RUN_TCC/
2009-04-18 23:53:25 +09:00
grischka
5829791ffa
fix makefiles etc for subdirs
2009-04-18 15:08:03 +02:00
grischka
ea5e81bd6a
new subdirs: include, lib, tests
2009-04-18 15:08:03 +02:00