Projects
Mega:24.03:SP1:Everything
gc
_service:tar_scm:gc-8.0.6-sw.patch
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:gc-8.0.6-sw.patch of Package gc
diff -Naur gc-8.0.6.org/config.guess gc-8.0.6.sw/config.guess --- gc-8.0.6.org/config.guess 2022-02-14 09:01:19.450000000 +0000 +++ gc-8.0.6.sw/config.guess 2022-02-15 02:27:24.780000000 +0000 @@ -973,6 +973,14 @@ EOF UNAME_MACHINE=aarch64_be GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; + sw_64:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + sw) UNAME_MACHINE=sw_64 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC="gnulibc1" ; fi + GUESS=${UNAME_MACHINE}-sunway-linux-${LIBC} + ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in EV5) UNAME_MACHINE=alphaev5 ;; diff -Naur gc-8.0.6.org/config.sub gc-8.0.6.sw/config.sub --- gc-8.0.6.org/config.sub 2022-02-14 09:01:19.450000000 +0000 +++ gc-8.0.6.sw/config.sub 2022-02-15 02:25:05.350000000 +0000 @@ -1175,6 +1175,7 @@ case $cpu-$vendor in case $cpu in 1750a | 580 \ | a29k \ + | sw_64 \ | aarch64 | aarch64_be \ | abacus \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ diff -Naur gc-8.0.6.org/extra/msvc_dbg.c gc-8.0.6.sw/extra/msvc_dbg.c --- gc-8.0.6.org/extra/msvc_dbg.c 2022-02-14 09:01:19.470000000 +0000 +++ gc-8.0.6.sw/extra/msvc_dbg.c 2022-02-15 02:32:56.220000000 +0000 @@ -156,6 +156,9 @@ size_t GetStackFramesFromContext(HANDLE hProcess, HANDLE hThread, #elif defined(_M_MRX000) machineType = IMAGE_FILE_MACHINE_R4000; stackFrame.AddrPC.Offset = context->Fir; +#elif defined(_M_SW_64) + machineType = IMAGE_FILE_MACHINE_SW_64; + stackFrame.AddrPC.Offset = (unsigned long)context->Fir; #elif defined(_M_ALPHA) machineType = IMAGE_FILE_MACHINE_ALPHA; stackFrame.AddrPC.Offset = (unsigned long)context->Fir; @@ -165,6 +168,9 @@ size_t GetStackFramesFromContext(HANDLE hProcess, HANDLE hThread, #elif defined(_M_IA64) machineType = IMAGE_FILE_MACHINE_IA64; stackFrame.AddrPC.Offset = context->StIIP; +#elif defined(_M_SW_6464) + machineType = IMAGE_FILE_MACHINE_SW_6464; + stackFrame.AddrPC.Offset = context->Fir; #elif defined(_M_ALPHA64) machineType = IMAGE_FILE_MACHINE_ALPHA64; stackFrame.AddrPC.Offset = context->Fir; diff -Naur gc-8.0.6.org/include/gc_config_macros.h gc-8.0.6.sw/include/gc_config_macros.h --- gc-8.0.6.org/include/gc_config_macros.h 2022-02-14 09:01:19.450000000 +0000 +++ gc-8.0.6.sw/include/gc_config_macros.h 2022-02-15 02:37:26.990000000 +0000 @@ -96,7 +96,7 @@ # define GC_FREEBSD_THREADS # elif defined(__NetBSD__) # define GC_NETBSD_THREADS -# elif defined(__alpha) || defined(__alpha__) /* && !Linux && !xBSD */ +# elif defined(__alpha) || defined(__alpha__) || defined(__sw_64) || defined(__sw_64__) /* && !Linux && !xBSD */ # define GC_OSF1_THREADS # elif (defined(mips) || defined(__mips) || defined(_mips)) \ && !(defined(nec_ews) || defined(_nec_ews) \ diff -Naur gc-8.0.6.org/include/gc_tiny_fl.h gc-8.0.6.sw/include/gc_tiny_fl.h --- gc-8.0.6.org/include/gc_tiny_fl.h 2022-02-14 09:01:19.440000000 +0000 +++ gc-8.0.6.sw/include/gc_tiny_fl.h 2022-02-15 02:38:20.270000000 +0000 @@ -49,7 +49,7 @@ # if defined(__LP64__) || defined (_LP64) || defined(_WIN64) \ || defined(__s390x__) \ || (defined(__x86_64__) && !defined(__ILP32__)) \ - || defined(__alpha__) || defined(__powerpc64__) \ + || defined(__alpha__) || defined(__sw_64__) || defined(__powerpc64__) \ || defined(__arch64__) # define GC_GRANULE_BYTES 16 # define GC_GRANULE_WORDS 2 diff -Naur gc-8.0.6.org/include/private/gc_priv.h gc-8.0.6.sw/include/private/gc_priv.h --- gc-8.0.6.org/include/private/gc_priv.h 2022-02-14 09:01:19.440000000 +0000 +++ gc-8.0.6.sw/include/private/gc_priv.h 2022-02-15 02:40:15.270000000 +0000 @@ -925,7 +925,7 @@ EXTERN_C_BEGIN /* SMALL_CONFIG: Want less block-level fragmentation. */ #ifndef HBLKSIZE # if defined(LARGE_CONFIG) || !defined(SMALL_CONFIG) -# ifdef ALPHA +# if defined ALPHA || defined SW_64 # define CPP_LOG_HBLKSIZE 13 # elif defined(SN_TARGET_PSP2) # define CPP_LOG_HBLKSIZE 16 /* page size is set to 64 KB */ diff -Naur gc-8.0.6.org/include/private/gcconfig.h gc-8.0.6.sw/include/private/gcconfig.h --- gc-8.0.6.org/include/private/gcconfig.h 2022-02-14 09:01:19.440000000 +0000 +++ gc-8.0.6.sw/include/private/gcconfig.h 2022-02-15 02:45:28.230000000 +0000 @@ -418,6 +418,14 @@ EXTERN_C_BEGIN # define M32R # define mach_type_known # endif +# if defined(__sw_64) || defined(__sw_64__) +# define SW_64 +# if !defined(LINUX) && !defined(NETBSD) && !defined(OPENBSD) \ + && !defined(FREEBSD) +# define OSF1 /* a.k.a Digital Unix */ +# endif +# define mach_type_known +# endif # if defined(__alpha) || defined(__alpha__) # define ALPHA # if !defined(LINUX) && !defined(NETBSD) && !defined(OPENBSD) \ @@ -1924,6 +1932,100 @@ EXTERN_C_BEGIN # endif # endif /* HP_PA */ +# ifdef SW_64 +# define MACH_TYPE "SW_64" +# define ALIGNMENT 8 +# define CPP_WORDSZ 64 +# ifdef NETBSD +# define OS_TYPE "NETBSD" +# define HEURISTIC2 + extern ptr_t GC_data_start; +# define DATASTART GC_data_start +# define ELFCLASS32 32 +# define ELFCLASS64 64 +# define ELF_CLASS ELFCLASS64 +# define DYNAMIC_LOADING +# endif +# ifdef OPENBSD +# define OS_TYPE "OPENBSD" +# define ELF_CLASS ELFCLASS64 +# ifndef GC_OPENBSD_THREADS +# define HEURISTIC2 +# endif + extern int __data_start[]; +# define DATASTART ((ptr_t)__data_start) + extern int _end[]; +# define DATAEND ((ptr_t)(&_end)) +# define DYNAMIC_LOADING +# endif +# ifdef FREEBSD +# define OS_TYPE "FREEBSD" +/* MPROTECT_VDB is not yet supported at all on FreeBSD/sw_64. */ +# define SIG_SUSPEND SIGUSR1 +# define SIG_THR_RESTART SIGUSR2 + /* SIGTSTP and SIGCONT could be used alternatively. */ +# define FREEBSD_STACKBOTTOM +# ifdef __ELF__ +# define DYNAMIC_LOADING +# endif +/* Handle unmapped hole sw_64*-*-freebsd[45]* puts between etext and edata. */ + extern char etext[]; + extern char edata[]; +# if !defined(CPPCHECK) + extern char end[]; +# endif +# define NEED_FIND_LIMIT +# define DATASTART ((ptr_t)(&etext)) + void * GC_find_limit(void *, int); +# define DATAEND (ptr_t)GC_find_limit(DATASTART, TRUE) +# define DATAEND_IS_FUNC +# define GC_HAVE_DATAREGION2 +# define DATASTART2 ((ptr_t)(&edata)) +# define DATAEND2 ((ptr_t)(&end)) +# endif +# ifdef OSF1 +# define OS_TYPE "OSF1" +# define DATASTART ((ptr_t)0x140000000) + extern int _end[]; +# define DATAEND ((ptr_t)(&_end)) + extern char ** environ; + /* round up from the value of environ to the nearest page boundary */ + /* Probably breaks if putenv is called before collector */ + /* initialization. */ +# define STACKBOTTOM ((ptr_t)(((word)(environ) | (getpagesize()-1))+1)) +/* # define HEURISTIC2 */ + /* Normally HEURISTIC2 is too conservative, since */ + /* the text segment immediately follows the stack. */ + /* Hence we give an upper pound. */ + /* This is currently unused, since we disabled HEURISTIC2 */ + extern int __start[]; +# define HEURISTIC2_LIMIT ((ptr_t)((word)(__start) & ~(getpagesize()-1))) +# ifndef GC_OSF1_THREADS + /* Unresolved signal issues with threads. */ +# define MPROTECT_VDB +# endif +# define DYNAMIC_LOADING +# endif +# ifdef LINUX +# define OS_TYPE "LINUX" +# define LINUX_STACKBOTTOM +# define COUNT_UNMAPPED_REGIONS +# ifdef __ELF__ +# define SEARCH_FOR_DATA_START +# define DYNAMIC_LOADING +# else +# define DATASTART ((ptr_t)0x140000000) +# endif + extern int _end[]; +# define DATAEND ((ptr_t)(_end)) +# if !defined(REDIRECT_MALLOC) +# define MPROTECT_VDB + /* Has only been superficially tested. May not */ + /* work on all versions. */ +# endif +# endif +# endif + # ifdef ALPHA # define MACH_TYPE "ALPHA" # define ALIGNMENT 8
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2