mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 807895 - Remove BSD/OS code. r=khuey
This commit is contained in:
parent
7b0d3468ef
commit
7ecca5d5ae
@ -352,11 +352,6 @@ endif
|
||||
TAR_CREATE_FLAGS = -cvhf
|
||||
TAR_CREATE_FLAGS_QUIET = -chf
|
||||
|
||||
ifeq ($(OS_ARCH),BSD_OS)
|
||||
TAR_CREATE_FLAGS = -cvLf
|
||||
TAR_CREATE_FLAGS_QUIET = -cLf
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),OS2)
|
||||
TAR_CREATE_FLAGS = -cvf
|
||||
TAR_CREATE_FLAGS_QUIET = -cf
|
||||
|
25
configure.in
25
configure.in
@ -1145,9 +1145,6 @@ solaris*)
|
||||
AC_SUBST(SOLARIS_SUNPRO_CC)
|
||||
AC_SUBST(SOLARIS_SUNPRO_CXX)
|
||||
;;
|
||||
BSD_386)
|
||||
HOST_OS_ARCH=BSD
|
||||
;;
|
||||
OS_2)
|
||||
HOST_OS_ARCH=OS2
|
||||
;;
|
||||
@ -1189,9 +1186,6 @@ AIX)
|
||||
OS_RELEASE=`uname -v`.`uname -r`
|
||||
OS_TEST=${target_cpu}
|
||||
;;
|
||||
BSD_386)
|
||||
OS_ARCH=BSD
|
||||
;;
|
||||
OS_2)
|
||||
OS_ARCH=OS2
|
||||
OS_TARGET=OS2
|
||||
@ -1930,25 +1924,6 @@ case "$target" in
|
||||
AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
|
||||
;;
|
||||
|
||||
*-bsdi*)
|
||||
dnl -pedantic doesn't play well with BSDI's _very_ modified gcc (shlicc2)
|
||||
_PEDANTIC=
|
||||
case $OS_RELEASE in
|
||||
4.*|5.*)
|
||||
STRIP="$STRIP -d"
|
||||
;;
|
||||
*)
|
||||
DSO_CFLAGS=''
|
||||
DSO_LDOPTS='-r'
|
||||
_WARNINGS_CFLAGS="-Wall"
|
||||
_WARNINGS_CXXFLAGS="-Wall"
|
||||
# The test above doesn't work properly, at least on 3.1.
|
||||
MKSHLIB_FORCE_ALL=''
|
||||
MKSHLIB_UNFORCE_ALL=''
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
*-darwin*)
|
||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||
|
@ -352,11 +352,6 @@ endif
|
||||
TAR_CREATE_FLAGS = -cvhf
|
||||
TAR_CREATE_FLAGS_QUIET = -chf
|
||||
|
||||
ifeq ($(OS_ARCH),BSD_OS)
|
||||
TAR_CREATE_FLAGS = -cvLf
|
||||
TAR_CREATE_FLAGS_QUIET = -cLf
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),OS2)
|
||||
TAR_CREATE_FLAGS = -cvf
|
||||
TAR_CREATE_FLAGS_QUIET = -cf
|
||||
|
@ -953,9 +953,6 @@ solaris*)
|
||||
AC_SUBST(SOLARIS_SUNPRO_CC)
|
||||
AC_SUBST(SOLARIS_SUNPRO_CXX)
|
||||
;;
|
||||
BSD_386)
|
||||
HOST_OS_ARCH=BSD
|
||||
;;
|
||||
OS_2)
|
||||
HOST_OS_ARCH=OS2
|
||||
;;
|
||||
@ -1002,9 +999,6 @@ AIX)
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
BSD_386)
|
||||
OS_ARCH=BSD
|
||||
;;
|
||||
OS_2)
|
||||
OS_ARCH=OS2
|
||||
OS_TARGET=OS2
|
||||
@ -1549,25 +1543,6 @@ case "$target" in
|
||||
AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
|
||||
;;
|
||||
|
||||
*-bsdi*)
|
||||
dnl -pedantic doesn't play well with BSDI's _very_ modified gcc (shlicc2)
|
||||
_PEDANTIC=
|
||||
case $OS_RELEASE in
|
||||
4.*|5.*)
|
||||
STRIP="$STRIP -d"
|
||||
;;
|
||||
*)
|
||||
DSO_CFLAGS=''
|
||||
DSO_LDOPTS='-r'
|
||||
_WARNINGS_CFLAGS="-Wall"
|
||||
_WARNINGS_CXXFLAGS="-Wall"
|
||||
# The test above doesn't work properly, at least on 3.1.
|
||||
MKSHLIB_FORCE_ALL=''
|
||||
MKSHLIB_UNFORCE_ALL=''
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
*-darwin*)
|
||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||
|
@ -50,7 +50,7 @@ endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq (,$(filter NetBSD OpenBSD BSD_OS GNU,$(OS_ARCH)))
|
||||
ifneq (,$(filter NetBSD OpenBSD GNU,$(OS_ARCH)))
|
||||
ifeq (86,$(findstring 86,$(OS_TEST)))
|
||||
CPPSRCS := xptcinvoke_gcc_x86_unix.cpp xptcstubs_gcc_x86_unix.cpp
|
||||
endif
|
||||
@ -316,15 +316,6 @@ endif
|
||||
# SPARC
|
||||
######################################################################
|
||||
#
|
||||
# BSD_OS/SPARC
|
||||
#
|
||||
ifeq ($(OS_ARCH),BSD_OS)
|
||||
ifneq (,$(findstring sparc,$(OS_TEST)))
|
||||
CPPSRCS := xptcinvoke_sparc_solaris.cpp xptcstubs_sparc_solaris.cpp
|
||||
ASFILES := xptcinvoke_asm_sparc_bsdos.s xptcstubs_asm_sparc_solaris.s
|
||||
endif
|
||||
endif
|
||||
#
|
||||
# Linux/SPARC
|
||||
#
|
||||
ifeq ($(OS_ARCH),Linux)
|
||||
|
@ -1,105 +0,0 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/* Platform specific code to invoke XPCOM methods on native objects */
|
||||
.global XPTC_InvokeByIndex
|
||||
/*
|
||||
XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex,
|
||||
uint32_t paramCount, nsXPTCVariant* params);
|
||||
|
||||
*/
|
||||
XPTC_InvokeByIndex:
|
||||
/* regular C/C++ stack frame -- see <machine/frame.h> */
|
||||
save %sp, -96, %sp
|
||||
|
||||
/*
|
||||
* invoke_count_words(paramCount, params) apparently tells us
|
||||
* how many "32-bit words" are involved in passing the given
|
||||
* parameters to the target function.
|
||||
*/
|
||||
mov %i2, %o0
|
||||
call invoke_count_words ! invoke_count_words(paramCount, params)
|
||||
mov %i3, %o1
|
||||
|
||||
/*
|
||||
* ??? Torek wonders: does invoke_count_words always force its
|
||||
* return value to be even? If not, we would have to adjust
|
||||
* the return value ... should make it a multiple of 8 anyway,
|
||||
* for efficiency (32 byte cache lines); will do that here thus:
|
||||
*
|
||||
* We already have room (in our callee's "argument dump" area,
|
||||
* sp->fr_argd) for six parameters, and we are going to use
|
||||
* five of those (fr_argd[1] through fr_argd[5]) in a moment.
|
||||
* This space is followed by fr_argx[1], room for a seventh.
|
||||
* Thus, if invoke_count_words returns a value between 0 and 6
|
||||
* inclusive, we do not need any stack adjustment. For values
|
||||
* from 7 through (7+8) we want to make room for another 8
|
||||
* parameters, and so on. Thus, we want to calculate:
|
||||
*
|
||||
* n_extra_words = (wordcount + 1) & ~7
|
||||
*
|
||||
* and then make room for that many more 32-bit words. (Normally
|
||||
* it would be ((w+7)&~7; we just subtract off the room-for-6 we
|
||||
* already have.)
|
||||
*/
|
||||
inc %o0
|
||||
andn %o0, 7, %o0
|
||||
sll %o0, 2, %o0 ! convert to bytes
|
||||
sub %sp, %o0, %sp ! and make room for arguments
|
||||
|
||||
/*
|
||||
* Copy all the arguments to the stack, starting at the argument
|
||||
* dump area at [%sp + 68], even though the first six arguments
|
||||
* go in the six %o registers. We will just load up those
|
||||
* arguments after the copy is done. The first argument to
|
||||
* any C++ member function is always the "this" parameter so
|
||||
* we actually start with what will go in %o1, at [%sp + 72].
|
||||
*/
|
||||
add %sp, 72, %o0 ! invoke_copy_to_stack(addr,
|
||||
mov %i2, %o1 ! paramCount,
|
||||
call invoke_copy_to_stack
|
||||
mov %i3, %o2 ! params);
|
||||
|
||||
/*
|
||||
* This is the only really tricky (compiler-dependent) part
|
||||
* (everything else here relies only on the V8 SPARC calling
|
||||
* conventions). "methodIndex" (%i1) is an index into a C++
|
||||
* vtable. The word at "*that" points to the vtable, but for
|
||||
* some reason, the first function (index=0) is at vtable[2*4],
|
||||
* the second (index 1) at vtable[3*4], the third at vtable[4*4],
|
||||
* and so on. Thus, we want, in effect:
|
||||
*
|
||||
* that->vTable[index + 2]
|
||||
*/
|
||||
ld [%i0], %l0 ! vTable = *that
|
||||
add %i1, 2, %l1
|
||||
sll %l1, 2, %l1
|
||||
ld [%l0 + %l1], %l0 ! fn = vTable[index + 2]
|
||||
|
||||
/*
|
||||
* Now load up the various function parameters. We do not know,
|
||||
* nor really care, how many there are -- we just load five words
|
||||
* from the stack (there are always at least five such words to
|
||||
* load, even if some of them are junk) into %o1 through %o5,
|
||||
* and set %o0 = %i0, to pass "that" to the target member function
|
||||
* as its C++ "this" parameter.
|
||||
*
|
||||
* If there are more than five parameters, any extras go on our
|
||||
* stack starting at sp->fr_argx ([%sp + 92]), which is of course
|
||||
* where we have just copied them.
|
||||
*/
|
||||
ld [%sp + 72], %o1
|
||||
ld [%sp + 76], %o2
|
||||
ld [%sp + 80], %o3
|
||||
ld [%sp + 84], %o4
|
||||
ld [%sp + 88], %o5
|
||||
call %l0 ! fn(that, %o1, %o2, %o3, %o4, %o5)
|
||||
mov %i0, %o0
|
||||
|
||||
! return whatever fn() returned
|
||||
ret
|
||||
restore %o0, 0, %o0
|
||||
|
@ -21,10 +21,3 @@ LIBS = \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
# For _write().
|
||||
ifeq ($(OS_ARCH),BSD_OS)
|
||||
OS_LIBS += -lgcc
|
||||
endif
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user