James Lyon
2bbfaf436f
Tests in abitest.c now work on Win32.
...
I expect that Linux-x86 is probably fine. All other architectures
except ARM are definitely broken since I haven't yet implemented
gfunc_sret for these, although replicating the current behaviour
should be straightforward.
2013-04-18 17:27:34 +01:00
Urs Janssen
0bdbd49eac
add version number to manpage
...
avoid c++/c99 style comments in preprocessor directives
avoid leadings whitespaces in preprocessor directives
mention implemented variable length arrays in documentation
fixed ambiguous option in texi2html call (Austin English)
2013-02-17 00:48:51 +01:00
Kirill Smelkov
ab24aaeca3
i386: We can change 'lea 0(%ebp),r' to 'mov %ebp,r'
...
Because that mov is 1 byte shorter, look:
int *func()
{
return __builtin_frame_address(0);
}
before patch:
00000000 <func>:
0: 55 push %ebp
1: 89 e5 mov %esp,%ebp
3: 81 ec 00 00 00 00 sub $0x0,%esp
9: 8d 45 00 lea 0x0(%ebp),%eax // <- here
c: e9 00 00 00 00 jmp 11 <func+0x11>
11: c9 leave
12: c3 ret
after patch:
00000000 <func>:
0: 55 push %ebp
1: 89 e5 mov %esp,%ebp
3: 81 ec 00 00 00 00 sub $0x0,%esp
9: 89 e8 mov %ebp,%eax // <- here
b: e9 00 00 00 00 jmp 10 <func+0x10>
10: c9 leave
11: c3 ret
2012-11-16 10:22:45 +04:00
Daniel Glöckner
9527c4949f
i386: fix loading of LLOCAL floats
...
These loads clobbered ebx as TinyCC wanted to load the address into st0.
2012-01-23 01:45:11 +01:00
Thomas Preud'homme
9c25ed13b4
s/derefencing/dereferencing/ in i386-gen.c
2012-01-08 18:03:17 +01:00
grischka
bf374a5f23
rename error/warning -> tcc_(error/warning)
2011-08-11 17:07:56 +02:00
Kirill Smelkov
87db8b637e
chmod a-x i386-gen.c
...
No need to keep executable bit on plain C source.
2010-06-16 14:37:30 +04:00
U-UNIT1\dennis
d3c432244c
generate inc and dec for smaller code
2010-04-03 21:20:34 +03:00
grischka
2341ee5142
tccpe: improve dllimport/export and use for tcc_add_symbol
2010-01-14 20:59:42 +01:00
grischka
88a3ccab9f
allow tcc be build from separate objects
...
If you want that, run: make NOTALLINONE=1
2009-12-20 01:53:49 +01:00
grischka
7fa712e00c
win32: enable bounds checker & exception handler
...
exception handler borrowed from k1w1. Thanks.
2009-12-19 22:22:43 +01:00
grischka
41e112360f
fix uninitialized warnings with 'type.ref'
2009-12-19 22:16:22 +01:00
grischka
94bf4d2c22
tccpe: improve dllimport
2009-12-19 22:16:21 +01:00
grischka
1308e8ebcf
integrate x86_64-asm.c into i386-asm.c
...
Also, disable 16bit support for now as it causes bugs
in 32bit mode. #define I386_ASM_16 if you want it.
2009-12-19 22:16:20 +01:00
grischka
5b113f3ee3
win32: handle __declspec(dllimport)
2009-11-13 18:04:56 +01:00
Shinichiro Hamaji
5dadff3de5
x86-64: Fix stab debug information.
...
We need 32bit relocations for code and 64bit for debug info.
Introduce a new macro R_DATA_PTR to distinguish the two usages.
2009-08-24 13:30:03 +02:00
grischka
c998985c74
cleanup: constify some global data
2009-07-18 22:07:42 +02:00
grischka
610fd47510
win32: structure return GCC compatible (ret 4 with cdecl)
2009-06-17 02:11:13 +02:00
grischka
f9181416f6
move some global variables into TCCState
2009-05-11 18:45:44 +02:00
Daniel Glöckner
2c657f6608
Set VT_LVAL_xxx flags for function arguments in gfunc_prolog (Daniel Glöckner)
2008-09-12 02:36:32 +02:00
grischka
5342b32eef
Switch to newer tccpe.c (includes support for resources)
2007-12-19 17:36:42 +00:00
bellard
38d2e8b9d8
Bug fix: A long long value used as a test expression ignores the upper 32 bits at runtime (Dave Dodge)
2006-10-28 14:10:07 +00:00
bellard
e9c64e3f47
windows style fastcall (Filip Navara)
2005-09-03 22:21:22 +00:00
bellard
09f4ce9857
_Bool type fix
2005-04-17 13:15:31 +00:00
bellard
9825011ced
__chkstk support
2005-04-10 22:15:08 +00:00
bellard
c9c05ca5f0
copyright update
2004-10-27 21:38:03 +00:00
bellard
72a88fbab0
primitive fastcall functions support
2004-10-18 00:14:40 +00:00
bellard
3bd3c71fd1
faster (Daniel Glöckner)
2004-10-04 22:06:22 +00:00
bellard
79c72b2419
initial TMS320C67xx support (TK)
2004-10-04 21:57:35 +00:00
bellard
4df5bd2eb0
ARM target support (Daniel Glockner) - allow unsigned char as default on ARM (Daniel Glockner) - fixed small ld script support (Daniel Glockner)
2003-10-14 22:15:56 +00:00
bellard
8f5e44a439
changed license to LGPL
2003-05-24 14:11:17 +00:00
bellard
214ccccea7
simpler function call API
2003-04-16 21:16:20 +00:00
bellard
b5259da4f2
renamed registers
2002-12-08 14:34:48 +00:00
bellard
d1e7e264a5
added MAX_ALIGN
2002-11-24 15:58:50 +00:00
bellard
9620fd18e4
added CType structure for type storage - supressed define hash table - added time dump in bench
2002-11-18 21:46:44 +00:00
bellard
fde824b7cd
handle computed gotos
2002-11-03 00:43:01 +00:00
bellard
3748975feb
trivial jump size optimization
2002-09-08 22:06:11 +00:00
bellard
431d648096
fixed PC32 relocation if constant address
2002-08-31 12:42:16 +00:00
bellard
d2115bfb27
added symbol + relocation handling
2002-08-29 23:05:59 +00:00
bellard
4891761bc9
realloc text section in code generation
2002-08-18 13:19:18 +00:00
bellard
4c9c0ab114
added size info
2002-07-27 23:08:29 +00:00
bellard
a42941b1f0
use data_offset in sections instead of pointer to ease section reallocation
2002-07-27 14:06:11 +00:00
bellard
58af3a6cd2
moved bcheck.c outside of tcc - optimized add sp code
2002-07-24 22:11:30 +00:00
bellard
6cdecbe4e6
added runtime library - fixed more relocations
2002-07-22 23:37:39 +00:00
bellard
3d902af1a9
moved relocation handling to elf generator
2002-07-22 00:20:57 +00:00
bellard
be44fce9cd
added GOT support
2002-07-18 00:51:27 +00:00
bellard
82695ae971
fixed PC32 relocation
2002-07-14 23:00:53 +00:00
bellard
6cd36b1285
added better relocation support (needed for file output)
2002-07-14 14:38:33 +00:00
bellard
264dbcfed2
fixed floating poing compare - use LVAL type - optimized bound checking
2002-07-13 15:55:16 +00:00
bellard
14fb0c49d8
added arg to save_regs()
2002-05-13 23:00:39 +00:00