From 1caee8ab3b6c3cf3ceb06d1ec4a5e09e2d90c543 Mon Sep 17 00:00:00 2001 From: James Lyon Date: Thu, 25 Apr 2013 22:30:53 +0100 Subject: Sorted out CMake on x86-64 and fixed silly XMM# bug introduced when working on Win64 stdargs. I removed the XMM6/7 registers from the register list because they are not used on Win64 however they are necessary for parameter passing on x86-64. I have now restored them but not marked them with RC_FLOAT so they will not be used except for parameter passing. --- lib/libtcc1.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lib/libtcc1.c') diff --git a/lib/libtcc1.c b/lib/libtcc1.c index 1f246be..159c401 100644 --- a/lib/libtcc1.c +++ b/lib/libtcc1.c @@ -607,9 +607,16 @@ unsigned long long __fixunsxfdi (long double a1) #if defined(__x86_64__) && !defined(_WIN64) +#ifndef __TINYC__ +#include +#include +#else /* Avoid including stdlib.h because it is not easily available when cross compiling */ extern void *malloc(unsigned long long); +extern void free(void*); +extern void abort(void); +#endif enum __va_arg_type { __va_gen_reg, __va_float_reg, __va_stack -- cgit v1.3.1