2002-03-12 Chris Demetriou <cgd@broadcom.com>
* configure.in (mipsisa32*-*-*, mipsisa64*-*-*): New targets. * mips.igen (mips32, mips64): New models, add to all instructions and functions as appropriate. (loadstore_ea, check_u64): New variant for model mips64. (check_fmt_p): New variant for models mipsV and mips64, remove mipsV model marking fro other variant. (SLL) Rename to... (SLLa) this. (CLO, CLZ, MADD, MADDU, MSUB, MSUBU, MUL, SLLb): New instructions for mips32 and mips64. (DCLO, DCLZ): New instructions for mips64.
This commit is contained in:
parent
35efcd67ac
commit
1e799e28c1
@ -1,3 +1,17 @@
|
||||
2002-03-12 Chris Demetriou <cgd@broadcom.com>
|
||||
|
||||
* configure.in (mipsisa32*-*-*, mipsisa64*-*-*): New targets.
|
||||
* mips.igen (mips32, mips64): New models, add to all instructions
|
||||
and functions as appropriate.
|
||||
(loadstore_ea, check_u64): New variant for model mips64.
|
||||
(check_fmt_p): New variant for models mipsV and mips64, remove
|
||||
mipsV model marking fro other variant.
|
||||
(SLL) Rename to...
|
||||
(SLLa) this.
|
||||
(CLO, CLZ, MADD, MADDU, MSUB, MSUBU, MUL, SLLb): New instructions
|
||||
for mips32 and mips64.
|
||||
(DCLO, DCLZ): New instructions for mips64.
|
||||
|
||||
2002-03-07 Chris Demetriou <cgd@broadcom.com>
|
||||
|
||||
* mips.igen (BREAK, LUI, ORI, SYSCALL, XORI): Print
|
||||
|
44
sim/mips/configure
vendored
44
sim/mips/configure
vendored
@ -3764,6 +3764,8 @@ fi
|
||||
#
|
||||
case "${target}" in
|
||||
mips*tx39*) SIM_SUBTARGET="-DSUBTARGET_R3900=1";;
|
||||
mipsisa32*-*-*) SIM_SUBTARGET="-DTARGET_ENABLE_FR=1";;
|
||||
mipsisa64*-*-*) SIM_SUBTARGET="-DTARGET_ENABLE_FR=1";;
|
||||
*) SIM_SUBTARGET="";;
|
||||
esac
|
||||
|
||||
@ -3780,6 +3782,8 @@ case "${target}" in
|
||||
mips64vr*el-*-*) default_endian=LITTLE_ENDIAN ;;
|
||||
mips64*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mips16*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mipsisa32*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mipsisa64*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mips*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
*) default_endian=BIG_ENDIAN ;;
|
||||
esac
|
||||
@ -3839,6 +3843,8 @@ mips_addr_bitsize=
|
||||
case "${target}" in
|
||||
mips64*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mips16*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mipsisa32*-*-*) mips_bitsize=32 ; mips_msb=31 ;;
|
||||
mipsisa64*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mips*-*-*) mips_bitsize=32 ; mips_msb=31 ;;
|
||||
*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
esac
|
||||
@ -3916,6 +3922,8 @@ case "${target}" in
|
||||
;;
|
||||
mips64*-*-*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
mips16*-*-*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
mipsisa32*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=64 ;;
|
||||
mipsisa64*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=64 ;;
|
||||
mips*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=32 ;;
|
||||
*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
esac
|
||||
@ -4011,6 +4019,14 @@ case "${target}" in
|
||||
sim_igen_filter="32,64,f"
|
||||
sim_m16_filter="16"
|
||||
;;
|
||||
mipsisa32*-*-*) sim_gen=IGEN
|
||||
sim_igen_machine="-M mips32"
|
||||
sim_igen_filter="32,f"
|
||||
;;
|
||||
mipsisa64*-*-*) sim_gen=IGEN
|
||||
sim_igen_machine="-M mips64"
|
||||
sim_igen_filter="32,64,f"
|
||||
;;
|
||||
mips*lsi*) sim_gen=M16
|
||||
sim_igen_machine="-M mipsIII,mips16"
|
||||
sim_m16_machine="-M mips16,mipsIII"
|
||||
@ -4116,7 +4132,7 @@ esac
|
||||
# Uses ac_ vars as temps to allow command line to override cache and checks.
|
||||
# --without-x overrides everything else, but does not touch the cache.
|
||||
echo $ac_n "checking for X""... $ac_c" 1>&6
|
||||
echo "configure:4120: checking for X" >&5
|
||||
echo "configure:4136: checking for X" >&5
|
||||
|
||||
# Check whether --with-x or --without-x was given.
|
||||
if test "${with_x+set}" = set; then
|
||||
@ -4178,12 +4194,12 @@ if test "$ac_x_includes" = NO; then
|
||||
|
||||
# First, try using that file with no special directory specified.
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4182 "configure"
|
||||
#line 4198 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <$x_direct_test_include>
|
||||
EOF
|
||||
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
|
||||
{ (eval echo configure:4187: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
{ (eval echo configure:4203: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
|
||||
if test -z "$ac_err"; then
|
||||
rm -rf conftest*
|
||||
@ -4252,14 +4268,14 @@ if test "$ac_x_libraries" = NO; then
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-l$x_direct_test_library $LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4256 "configure"
|
||||
#line 4272 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
int main() {
|
||||
${x_direct_test_function}()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:4263: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:4279: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
LIBS="$ac_save_LIBS"
|
||||
# We can link X programs with no special library path.
|
||||
@ -4352,17 +4368,17 @@ for ac_hdr in string.h strings.h stdlib.h stdlib.h
|
||||
do
|
||||
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
|
||||
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
|
||||
echo "configure:4356: checking for $ac_hdr" >&5
|
||||
echo "configure:4372: checking for $ac_hdr" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4361 "configure"
|
||||
#line 4377 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <$ac_hdr>
|
||||
EOF
|
||||
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
|
||||
{ (eval echo configure:4366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
{ (eval echo configure:4382: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
|
||||
if test -z "$ac_err"; then
|
||||
rm -rf conftest*
|
||||
@ -4389,7 +4405,7 @@ fi
|
||||
done
|
||||
|
||||
echo $ac_n "checking for fabs in -lm""... $ac_c" 1>&6
|
||||
echo "configure:4393: checking for fabs in -lm" >&5
|
||||
echo "configure:4409: checking for fabs in -lm" >&5
|
||||
ac_lib_var=`echo m'_'fabs | sed 'y%./+-%__p_%'`
|
||||
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
@ -4397,7 +4413,7 @@ else
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lm $LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4401 "configure"
|
||||
#line 4417 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
@ -4408,7 +4424,7 @@ int main() {
|
||||
fabs()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:4412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:4428: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_lib_$ac_lib_var=yes"
|
||||
else
|
||||
@ -4438,12 +4454,12 @@ fi
|
||||
for ac_func in aint anint sqrt
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:4442: checking for $ac_func" >&5
|
||||
echo "configure:4458: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4447 "configure"
|
||||
#line 4463 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
@ -4466,7 +4482,7 @@ $ac_func();
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:4470: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:4486: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
|
@ -19,6 +19,8 @@ SIM_AC_OPTION_WARNINGS
|
||||
#
|
||||
case "${target}" in
|
||||
mips*tx39*) SIM_SUBTARGET="-DSUBTARGET_R3900=1";;
|
||||
mipsisa32*-*-*) SIM_SUBTARGET="-DTARGET_ENABLE_FR=1";;
|
||||
mipsisa64*-*-*) SIM_SUBTARGET="-DTARGET_ENABLE_FR=1";;
|
||||
*) SIM_SUBTARGET="";;
|
||||
esac
|
||||
AC_SUBST(SIM_SUBTARGET)
|
||||
@ -35,6 +37,8 @@ case "${target}" in
|
||||
mips64vr*el-*-*) default_endian=LITTLE_ENDIAN ;;
|
||||
mips64*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mips16*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mipsisa32*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mipsisa64*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
mips*-*-*) default_endian=BIG_ENDIAN ;;
|
||||
*) default_endian=BIG_ENDIAN ;;
|
||||
esac
|
||||
@ -49,6 +53,8 @@ mips_addr_bitsize=
|
||||
case "${target}" in
|
||||
mips64*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mips16*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mipsisa32*-*-*) mips_bitsize=32 ; mips_msb=31 ;;
|
||||
mipsisa64*-*-*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
mips*-*-*) mips_bitsize=32 ; mips_msb=31 ;;
|
||||
*) mips_bitsize=64 ; mips_msb=63 ;;
|
||||
esac
|
||||
@ -67,6 +73,8 @@ case "${target}" in
|
||||
;;
|
||||
mips64*-*-*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
mips16*-*-*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
mipsisa32*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=64 ;;
|
||||
mipsisa64*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=64 ;;
|
||||
mips*-*-*) mips_fpu=HARD_FLOATING_POINT ; mips_fpu_bitsize=32 ;;
|
||||
*) mips_fpu=HARD_FLOATING_POINT ;;
|
||||
esac
|
||||
@ -116,6 +124,14 @@ case "${target}" in
|
||||
sim_igen_filter="32,64,f"
|
||||
sim_m16_filter="16"
|
||||
;;
|
||||
mipsisa32*-*-*) sim_gen=IGEN
|
||||
sim_igen_machine="-M mips32"
|
||||
sim_igen_filter="32,f"
|
||||
;;
|
||||
mipsisa64*-*-*) sim_gen=IGEN
|
||||
sim_igen_machine="-M mips64"
|
||||
sim_igen_filter="32,64,f"
|
||||
;;
|
||||
mips*lsi*) sim_gen=M16
|
||||
sim_igen_machine="-M mipsIII,mips16"
|
||||
sim_m16_machine="-M mips16,mipsIII"
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user