MinGW build repairs and improvements

This commit is contained in:
Matthew Flatt 2015-03-28 07:12:17 -06:00
parent 5fff8e2056
commit f7d4f7b234
6 changed files with 11 additions and 7 deletions

View File

@ -881,6 +881,7 @@
setjmp longjmp _longjmp scheme_longjmp_setjmp scheme_mz_longjmp scheme_jit_longjmp
scheme_jit_setjmp_prepare
scheme_get_thread_local_variables pthread_getspecific
__builtin_frame_address
;; The following are functions, but they don't trigger GC, and
;; they either take one argument or no pointer arguments.

View File

@ -153,7 +153,7 @@ no-cgc-needed:
$(MAKE) @FOREIGNTARGET@
$(MAKE) main.@LTO@
$(MAKE) mingw-other
cd dynsrc; $(MAKE) ../starter
cd dynsrc; $(MAKE) ../starter@EXE_SUFFIX@
FOREIGN_USED_LIB = $(FOREIGN_OBJ) $(FOREIGN_LIB)
FOREIGN_USED_OBJSLIB = $(FOREIGN_OBJSLIB)

View File

@ -52,10 +52,10 @@ MZDYNDEP = ../mzdyn.o $(srcdir)/../include/ext.exp $(srcdir)/../include/racket.e
dynexmpl.o: $(srcdir)/dynexmpl.c $(HEADERS)
$(PLAIN_CC) $(ALL_CFLAGS) -c $(srcdir)/dynexmpl.c -o dynexmpl.o
../starter@NOT_MINGW@: $(srcdir)/ustart.c
../starter@NOT_MINGW@@EXE_SUFFIX@: $(srcdir)/ustart.c
$(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/ustart.c
../starter@MINGW@: $(srcdir)/start.c ../mrstarter@EXE_SUFFIX@ sres.o
../starter@MINGW@@EXE_SUFFIX@: $(srcdir)/start.c ../mrstarter@EXE_SUFFIX@ sres.o
$(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/start.c sres.o
../mrstarter@EXE_SUFFIX@: sres.o
$(PLAIN_CC) $(ALL_CFLAGS) -mwindows -DMRSTART -o ../mrstarter $(srcdir)/start.c sres.o

View File

@ -36,7 +36,9 @@
#include "sgc.h"
#ifdef _WIN64
# define SIZEOF_LONG 8
# ifndef SIXTY_FOUR_BIT_INTEGERS
# define SIXTY_FOUR_BIT_INTEGERS
# endif
# ifdef _MSC_VER
# define inline _inline
# endif
@ -1331,7 +1333,7 @@ static int is_sector_segment(void *p)
intptr_t pageindex = SECTOR_LOOKUP_PAGEPOS(s);
DECL_SECTOR_PAGETABLES;
FIND_SECTOR_PAGETABLES(p);
FIND_SECTOR_PAGETABLES(s);
if (!sector_pagetables) return 0;
return (sector_pagetables[pagetableindex]

View File

@ -8,7 +8,8 @@ extern "C" {
#define GC_PTR void*
#if defined(WIN32) || defined(__CYGWIN32__)
# if defined(SGC_EXPORTS) || (defined(__CYGWIN32__) && !defined(MZ_USES_SHARED_LIB))
# if (defined(SGC_EXPORTS) || (defined(__CYGWIN32__) && !defined(MZ_USES_SHARED_LIB)) \
|| defined(__MINGW32_DELAY_LOAD__))
# define SGC_EXTERN __declspec(dllexport)
# else
# define SGC_EXTERN __declspec(dllimport)

View File

@ -2210,7 +2210,7 @@ mpn_set_str (mp_ptr rp, const unsigned char *str, size_t str_len, int base)
res_digit = inp_digit >> (bits_per_indigit - next_bitpos);
}
if (!((long)s & 0xFF)) SCHEME_BIGNUM_USE_FUEL(1);
if (!((intptr_t)s & 0xFF)) SCHEME_BIGNUM_USE_FUEL(1);
}
if (res_digit != 0)