Commit Graph

758 Commits

Author SHA1 Message Date
grischka
a26bf10de3 win64: Use tcc's own assembler
Now that we have it thanks to Mr. Féret
2009-11-21 23:43:38 +01:00
grischka
50055880f9 asm 32/64: replace (long)sym->next by sym->jnext 2009-11-21 23:43:30 +01:00
grischka
1383055b17 x86_64: fix asm 2009-11-14 21:48:37 +01:00
grischka
0a3bcb57f6 fix 32bit asm
The new 16bit code was causing wrong 0x66 prefixes
in 32bit code.

The fix possibly breaks the feature on 16bit asm.
2009-11-14 20:05:22 +01:00
Feret@.(none)
c15e37edad Removed binary executable output support
This broke writing executables.
2009-11-13 18:09:02 +01:00
Bernhard Reutner-Fischer
2fdb45f577 fix ambiguity
Signed-off-by: aldot <rep.dot.nop@gmail.com>
2009-11-13 18:09:02 +01:00
Frederic Feret
3065e70630 Fixed compilation error in i386-asm.c 2009-11-13 18:09:01 +01:00
Frederic Feret
ae23c46ce2 fixed and added missing file for x86_64 assembly 2009-11-13 18:09:01 +01:00
Frederic Feret
b7d7af4fa2 ARM: first support for arm-pe target 2009-11-13 18:09:00 +01:00
Frederic Feret
2f73e42d87 various fixes and new options for PE format 2009-11-13 18:09:00 +01:00
Frederic Feret
526c464504 first support of x86_64 assembly 2009-11-13 18:08:59 +01:00
Frederic Feret
0d768b9713 added 16-bit x86 assembly support 2009-11-13 18:08:58 +01:00
Frederic Feret
2349efa61b add binary executable output support 2009-11-13 18:08:58 +01:00
Daniel Glöckner
bc48cc1edb fix sizeof(array + integer)
Previously sizeof would return the size of the array although the
expression is always a plain pointer of 4 (or 8) bytes.
2009-11-13 18:05:15 +01:00
grischka
5b113f3ee3 win32: handle __declspec(dllimport) 2009-11-13 18:04:56 +01:00
grischka
dd70d19267 #define __TINYC__ = version-number 2009-11-13 17:11:52 +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
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
834b782a9c tccpe: fill checksum header field 2009-08-24 13:30:02 +02:00
grischka
569c20f104 tccpp: fix quirk with cached headers and #else
Such as with

    #ifndef FOO_H
    ...
    #else
    ...
    #endif
2009-08-24 13:30:01 +02:00
grischka
1026ca5888 fix "symbol not defined" if symbol has offset 0 2009-08-24 13:30:01 +02:00
grischka
d923e652f2 tccpp: avoid double free with macro_ptr_allocated (after errors) 2009-08-24 13:30:00 +02:00
grischka
0d34c2136e tccgen: free inline functions correctly 2009-08-24 13:30:00 +02:00
grischka
697f9e305d win64: fix bat 2009-08-24 13:28:02 +02:00
grischka
b08dfb8273 tcc: optionally build using libtcc 2009-07-18 22:08:01 +02:00
grischka
f88350b611 fix some warning 2009-07-18 22:07:51 +02:00
grischka
c998985c74 cleanup: constify some global data 2009-07-18 22:07:42 +02:00
grischka
94ae3984b0 tccpe: set tcc_lib_path from DLL 2009-07-18 22:07:33 +02:00
grischka
1df662c1b0 tccpe: load dll on the fly 2009-07-18 22:07:25 +02:00
grischka
9fda4f4248 win32: treat long double as double 2009-07-18 22:07:17 +02:00
grischka
97738d1ae9 win32: reformat examples, crt etc 2009-07-18 22:07:10 +02:00
grischka
bb5e0df79a x86-64: fix load() for const pointers: (void*)-2 2009-07-18 22:07:03 +02:00
grischka
fc977d56c9 x86-64: chkstk, alloca 2009-07-18 22:06:54 +02:00
grischka
c0fc0fa0c4 win64: add x64 target to build-tcc.bat 2009-07-18 22:06:46 +02:00
grischka
dc251a7d8d win64: use new headers from mingw 2009-07-18 22:06:37 +02:00
grischka
06aed3d171 win64: update tiny_impdef, tiny_libmaker (Elf64) 2009-07-18 22:06:14 +02:00
grischka
09ac9faf59 win64: align jmp_buf 2009-07-18 22:06:07 +02:00
grischka
035918ef2f win64: fix pointer <-> unsigned long typecast issues 2009-07-18 22:05:58 +02:00
grischka
459875796b pe32+ target: adjust x86_64-gen.c
- calling conventions are different:
  * only 4 registers
  * stack "scratch area" is always reserved
  * doubles are mirrored in normal registers
- no GOT or PIC there
2009-07-18 22:05:49 +02:00
grischka
3ba1532cfb pe32+ target: add to makefile 2009-07-18 22:05:40 +02:00
grischka
3ea4acb9b9 pe32+ target: add in various #define's 2009-07-18 22:05:27 +02:00
grischka
719ba918dd tccpe: use more official structs 2009-07-18 21:55:32 +02:00
grischka
f366cb20fe tccpe: support pe32+ (x86_64) target 2009-07-18 21:55:28 +02:00
grischka
fe8def3303 tccpe: use ElfW macros 2009-07-18 21:55:25 +02:00
grischka
dcfad3af49 tccpe: get rid of kludgy export-symbol sort 2009-07-18 21:55:20 +02:00
grischka
370cdeb628 tccpe: build IAT vector with with -run too
This prepares for x86_64 where we need the vector
for far jumps.  Also, resolve DLL symbols in place
2009-07-18 21:55:15 +02:00
grischka
bed17847bd cleanup: stop abuse of sym->c for #define tokenstreams 2009-07-18 21:55:10 +02:00
grischka
d0b432ab38 cleanup: stop abuse of sym->r for inline functions 2009-07-18 21:55:06 +02:00
grischka
5e83b64dae cleanup: put prototypes in front of libtcc.c 2009-07-18 21:55:02 +02:00
grischka
85e481b66e pp: return newline after directive 2009-07-18 21:54:58 +02:00