sim: ppc: scope configure options to --enable-sim-ppc-xxx

To prepare for moving these into the top-level configure, namespace
then with the port name like we do with all other ports.
This commit is contained in:
Mike Frysinger 2024-01-02 01:30:53 -05:00
parent 08e88f27c7
commit cc92657346
3 changed files with 395 additions and 392 deletions

View File

@ -61,14 +61,14 @@ BISON = bison
MAKEINFO = makeinfo
INLINE_CFLAGS = $(SIM_INLINE)
SMP_CFLAGS = @sim_smp@
XOR_ENDIAN_CFLAGS = @sim_xor_endian@
BITSIZE_CFLAGS = @sim_bitsize@
TIMEBASE_CFLAGS = @sim_timebase@
FLOAT_CFLAGS = @sim_float@
MONITOR_CFLAGS = @sim_monitor@
MODEL_CFLAGS = @sim_model@ @sim_default_model@ @sim_model_issue@
SWITCH_CFLAGS = @sim_switch@
SMP_CFLAGS = @sim_ppc_smp@
XOR_ENDIAN_CFLAGS = @sim_ppc_xor_endian@
BITSIZE_CFLAGS = @sim_ppc_bitsize@
TIMEBASE_CFLAGS = @sim_ppc_timebase@
FLOAT_CFLAGS = @sim_ppc_float@
MONITOR_CFLAGS = @sim_ppc_monitor@
MODEL_CFLAGS = @sim_ppc_model@ @sim_ppc_default_model@ @sim_ppc_model_issue@
SWITCH_CFLAGS = @sim_ppc_switch@
CONFIG_CFLAGS = \
-DHAVE_CONFIG_H \
$(SMP_CFLAGS) \
@ -86,14 +86,14 @@ NOWARN_CFLAGS = $(CFLAGS) $(INLINE_CFLAGS) $(CONFIG_CFLAGS) $(INCLUDES) $(SIM_FP
LIBS = $(COMMON_LIBS) @LIBS@ $(LIBGNU) $(LIBGNU_EXTRA_LIBS)
IGEN_OPCODE_RULES = @sim_opcode@
IGEN_DECODE_MECHANISM = @sim_decode_mechanism@
IGEN_DUPLICATE = @sim_dup@
IGEN_JUMP = @sim_jump@
IGEN_FILTER = @sim_filter@
IGEN_ICACHE = @sim_icache@
IGEN_SMP = @sim_igen_smp@
IGEN_LINE_NR = @sim_line_nr@
IGEN_OPCODE_RULES = @sim_ppc_opcode@
IGEN_DECODE_MECHANISM = @sim_ppc_decode_mechanism@
IGEN_DUPLICATE = @sim_ppc_dup@
IGEN_JUMP = @sim_ppc_jump@
IGEN_FILTER = @sim_ppc_filter@
IGEN_ICACHE = @sim_ppc_icache@
IGEN_SMP = @sim_ppc_igen_smp@
IGEN_LINE_NR = @sim_ppc_line_nr@
IGEN_FLAGS = \
$(IGEN_DECODE_MECHANISM) \
@ -482,8 +482,8 @@ LIB_OBJ = \
GDB_OBJ = gdb-sim.o sim_calls.o
HW_SRC = @sim_hw_src@
HW_OBJ = @sim_hw_obj@
HW_SRC = @sim_ppc_hw_src@
HW_OBJ = @sim_ppc_hw_obj@
PACKAGE_SRC = pk_disklabel.c
PACKAGE_OBJ = $(PACKAGE_SRC:.c=.o)
@ -560,7 +560,7 @@ sim-fpu.o: $(srcdir)/../common/sim-fpu.c
# Rebuild options whenever something changes so the date/time is up to date.
options.o: options.c $(CPU_H) $(OPTIONS_H) $(DEFINES_H) $(BASICS_H) $(IDECODE_H) $(INLINE) $(LIB_SRC) $(BUILT_SRC) config.status Makefile
$(ECHO_CC) $(CC) -c $(STD_CFLAGS) '-DOPCODE_RULES="@sim_opcode@"' '-DIGEN_FLAGS="$(IGEN_FLAGS)"' $(srcdir)/options.c
$(ECHO_CC) $(CC) -c $(STD_CFLAGS) '-DOPCODE_RULES="@sim_ppc_opcode@"' '-DIGEN_FLAGS="$(IGEN_FLAGS)"' $(srcdir)/options.c
#
# Rules to create the built c source code files

447
sim/ppc/configure vendored
View File

@ -584,26 +584,26 @@ PACKAGE_URL=
ac_unique_file="Makefile.in"
ac_subst_vars='LTLIBOBJS
LIBOBJS
sim_model_issue
sim_default_model
sim_model
sim_monitor
sim_float
sim_timebase
sim_bitsize
sim_igen_smp
sim_smp
sim_xor_endian
sim_hw_obj
sim_hw_src
sim_icache
sim_filter
sim_jump
sim_decode_mechanism
sim_dup
sim_switch
sim_opcode
sim_line_nr
sim_ppc_model_issue
sim_ppc_default_model
sim_ppc_model
sim_ppc_monitor
sim_ppc_float
sim_ppc_timebase
sim_ppc_bitsize
sim_ppc_igen_smp
sim_ppc_smp
sim_ppc_xor_endian
sim_ppc_hw_obj
sim_ppc_hw_src
sim_ppc_icache
sim_ppc_filter
sim_ppc_jump
sim_ppc_decode_mechanism
sim_ppc_dup
sim_ppc_switch
sim_ppc_opcode
sim_ppc_line_nr
target_alias
host_alias
build_alias
@ -645,24 +645,24 @@ SHELL'
ac_subst_files=''
ac_user_opts='
enable_option_checking
enable_sim_bitsize
enable_sim_decode_mechanism
enable_sim_default_model
enable_sim_duplicate
enable_sim_filter
enable_sim_float
enable_sim_hardware
enable_sim_icache
enable_sim_jump
enable_sim_line_nr
enable_sim_model
enable_sim_model_issue
enable_sim_monitor
enable_sim_opcode
enable_sim_smp
enable_sim_switch
enable_sim_timebase
enable_sim_xor_endian
enable_sim_ppc_bitsize
enable_sim_ppc_decode_mechanism
enable_sim_ppc_default_model
enable_sim_ppc_duplicate
enable_sim_ppc_filter
enable_sim_ppc_float
enable_sim_ppc_hardware
enable_sim_ppc_icache
enable_sim_ppc_jump
enable_sim_ppc_line_nr
enable_sim_ppc_model
enable_sim_ppc_model_issue
enable_sim_ppc_monitor
enable_sim_ppc_opcode
enable_sim_ppc_smp
enable_sim_ppc_switch
enable_sim_ppc_timebase
enable_sim_ppc_xor_endian
'
ac_precious_vars='build_alias
host_alias
@ -1274,37 +1274,40 @@ Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-sim-bitsize=n Specify target bitsize (32 or 64).
--enable-sim-decode-mechanism=which
--enable-sim-ppc-bitsize=n
Specify target bitsize (32 or 64).
--enable-sim-ppc-decode-mechanism=which
Specify the instruction decode mechanism.
--enable-sim-default-model=which
--enable-sim-ppc-default-model=which
Specify default PowerPC to model.
--enable-sim-duplicate Expand (duplicate) semantic functions.
--enable-sim-filter=rule
--enable-sim-ppc-duplicate
Expand (duplicate) semantic functions.
--enable-sim-ppc-filter=rule
Specify filter rules.
--enable-sim-float Specify whether the target has hard, soft, altivec
--enable-sim-ppc-float Specify whether the target has hard, soft, altivec
or e500 floating point.
--enable-sim-hardware=list
--enable-sim-ppc-hardware=list
Specify the hardware to be included in the build.
--enable-sim-icache=size
--enable-sim-ppc-icache=size
Specify instruction-decode cache size and type.
--enable-sim-jump Jump between semantic code (instead of call/return).
--enable-sim-line-nr=opts
--enable-sim-ppc-jump Jump between semantic code (instead of call/return).
--enable-sim-ppc-line-nr=opts
Generate extra CPP code that references source
rather than generated code
--enable-sim-model=which
--enable-sim-ppc-model=which
Specify PowerPC to model.
--enable-sim-model-issue
--enable-sim-ppc-model-issue
Specify whether to simulate model specific actions
--enable-sim-monitor=mon
--enable-sim-ppc-monitor=mon
Specify whether to enable monitoring events.
--enable-sim-opcode=which
--enable-sim-ppc-opcode=which
Override default opcode lookup.
--enable-sim-smp=n Specify number of processors to configure for.
--enable-sim-switch Use a switch instead of a table for instruction
--enable-sim-ppc-smp=n Specify number of processors to configure for.
--enable-sim-ppc-switch Use a switch instead of a table for instruction
call.
--enable-sim-timebase Specify whether the PPC timebase is supported.
--enable-sim-xor-endian=n
--enable-sim-ppc-timebase
Specify whether the PPC timebase is supported.
--enable-sim-ppc-xor-endian=n
Specify number bytes involved in PowerPC XOR
bi-endian mode (default 8).
@ -1740,316 +1743,316 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc bitsize settings" >&5
$as_echo_n "checking for sim ppc bitsize settings... " >&6; }
# Check whether --enable-sim-bitsize was given.
if test "${enable_sim_bitsize+set}" = set; then :
enableval=$enable_sim_bitsize; case "${enableval}" in
32|64) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
*) as_fn_error $? "\"--enable-sim-bitsize was given $enableval. Expected 32 or 64\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-bitsize was given.
if test "${enable_sim_ppc_bitsize+set}" = set; then :
enableval=$enable_sim_ppc_bitsize; case "${enableval}" in
32|64) sim_ppc_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
*) as_fn_error $? "\"--enable-sim-ppc-bitsize was given $enableval. Expected 32 or 64\"" "$LINENO" 5;;
esac
else
sim_bitsize=""
sim_ppc_bitsize=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_bitsize" >&5
$as_echo "$sim_bitsize" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_bitsize" >&5
$as_echo "$sim_ppc_bitsize" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc decode mechanism" >&5
$as_echo_n "checking for sim ppc decode mechanism... " >&6; }
# Check whether --enable-sim-decode-mechanism was given.
if test "${enable_sim_decode_mechanism+set}" = set; then :
enableval=$enable_sim_decode_mechanism; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-decode-mechanism=file\"" "$LINENO" 5;;
array|switch|padded-switch|goto-switch) sim_decode_mechanism="-T ${enableval}";;
# Check whether --enable-sim-ppc-decode-mechanism was given.
if test "${enable_sim_ppc_decode_mechanism+set}" = set; then :
enableval=$enable_sim_ppc_decode_mechanism; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-ppc-decode-mechanism=file\"" "$LINENO" 5;;
array|switch|padded-switch|goto-switch) sim_ppc_decode_mechanism="-T ${enableval}";;
*) as_fn_error $? "\"File $enableval is not an opcode rules file\"" "$LINENO" 5;;
esac
else
sim_decode_mechanism=""
sim_ppc_decode_mechanism=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_decode_mechanism" >&5
$as_echo "$sim_decode_mechanism" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_decode_mechanism" >&5
$as_echo "$sim_ppc_decode_mechanism" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc default model" >&5
$as_echo_n "checking for sim ppc default model... " >&6; }
# Check whether --enable-sim-default-model was given.
if test "${enable_sim_default_model+set}" = set; then :
enableval=$enable_sim_default_model; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-default-model=model\"" "$LINENO" 5;;
*) sim_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
# Check whether --enable-sim-ppc-default-model was given.
if test "${enable_sim_ppc_default_model+set}" = set; then :
enableval=$enable_sim_ppc_default_model; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-ppc-default-model=model\"" "$LINENO" 5;;
*) sim_ppc_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
esac
else
sim_default_model=""
sim_ppc_default_model=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_default_model" >&5
$as_echo "$sim_default_model" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_default_model" >&5
$as_echo "$sim_ppc_default_model" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc duplicate settings" >&5
$as_echo_n "checking for sim ppc duplicate settings... " >&6; }
# Check whether --enable-sim-duplicate was given.
if test "${enable_sim_duplicate+set}" = set; then :
enableval=$enable_sim_duplicate; case "${enableval}" in
yes) sim_dup="-E";;
no) sim_dup="";;
*) as_fn_error $? "\"--enable-sim-duplicate does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-duplicate was given.
if test "${enable_sim_ppc_duplicate+set}" = set; then :
enableval=$enable_sim_ppc_duplicate; case "${enableval}" in
yes) sim_ppc_dup="-E";;
no) sim_ppc_dup="";;
*) as_fn_error $? "\"--enable-sim-ppc-duplicate does not take a value\"" "$LINENO" 5;;
esac
else
sim_dup="-E"
sim_ppc_dup="-E"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_dup" >&5
$as_echo "$sim_dup" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_dup" >&5
$as_echo "$sim_ppc_dup" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc filter rules" >&5
$as_echo_n "checking for sim ppc filter rules... " >&6; }
# Check whether --enable-sim-filter was given.
if test "${enable_sim_filter+set}" = set; then :
enableval=$enable_sim_filter; case "${enableval}" in
yes) as_fn_error $? "\"--enable-sim-filter must be specified with a rule to filter or no\"" "$LINENO" 5;;
no) sim_filter="";;
*) sim_filter="-F $enableval";;
# Check whether --enable-sim-ppc-filter was given.
if test "${enable_sim_ppc_filter+set}" = set; then :
enableval=$enable_sim_ppc_filter; case "${enableval}" in
yes) as_fn_error $? "\"--enable-sim-ppc-filter must be specified with a rule to filter or no\"" "$LINENO" 5;;
no) sim_ppc_filter="";;
*) sim_ppc_filter="-F $enableval";;
esac
else
sim_filter="-F 32,f,o"
sim_ppc_filter="-F 32,f,o"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_filter" >&5
$as_echo "$sim_filter" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_filter" >&5
$as_echo "$sim_ppc_filter" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc float settings" >&5
$as_echo_n "checking for sim ppc float settings... " >&6; }
# Check whether --enable-sim-float was given.
if test "${enable_sim_float+set}" = set; then :
enableval=$enable_sim_float; case "${enableval}" in
yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
altivec) sim_float="-DWITH_ALTIVEC" ; sim_filter="${sim_filter},av" ;;
*spe*|*simd*) sim_float="-DWITH_E500" ; sim_filter="${sim_filter},e500" ;;
*) as_fn_error $? "\"Unknown value $enableval passed to --enable-sim-float\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-float was given.
if test "${enable_sim_ppc_float+set}" = set; then :
enableval=$enable_sim_ppc_float; case "${enableval}" in
yes | hard) sim_ppc_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
no | soft) sim_ppc_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
altivec) sim_ppc_float="-DWITH_ALTIVEC" ; sim_ppc_filter="${sim_ppc_filter},av" ;;
*spe*|*simd*) sim_ppc_float="-DWITH_E500" ; sim_ppc_filter="${sim_ppc_filter},e500" ;;
*) as_fn_error $? "\"Unknown value $enableval passed to --enable-sim-ppc-float\"" "$LINENO" 5;;
esac
else
case "${target}" in
*altivec*) sim_float="-DWITH_ALTIVEC" ; sim_filter="${sim_filter},av" ;;
*spe*|*simd*) sim_float="-DWITH_E500" ; sim_filter="${sim_filter},e500" ;;
*) sim_float=""
*altivec*) sim_ppc_float="-DWITH_ALTIVEC" ; sim_ppc_filter="${sim_ppc_filter},av" ;;
*spe*|*simd*) sim_ppc_float="-DWITH_E500" ; sim_ppc_filter="${sim_ppc_filter},e500" ;;
*) sim_ppc_float=""
esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_float" >&5
$as_echo "$sim_float" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_float" >&5
$as_echo "$sim_ppc_float" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc hardware settings" >&5
$as_echo_n "checking for sim ppc hardware settings... " >&6; }
hardware="cpu,memory,nvram,iobus,htab,disk,trace,register,vm,init,core,pal,com,eeprom,opic,glue,phb,ide,sem,shm"
# Check whether --enable-sim-hardware was given.
if test "${enable_sim_hardware+set}" = set; then :
enableval=$enable_sim_hardware; case "${enableval}" in
# Check whether --enable-sim-ppc-hardware was given.
if test "${enable_sim_ppc_hardware+set}" = set; then :
enableval=$enable_sim_ppc_hardware; case "${enableval}" in
yes) ;;
no) as_fn_error $? "\"List of hardware must be specified for --enable-sim-hardware\"" "$LINENO" 5;;
no) as_fn_error $? "\"List of hardware must be specified for --enable-sim-ppc-hardware\"" "$LINENO" 5;;
,*) hardware="${hardware}${enableval}";;
*,) hardware="${enableval}${hardware}";;
*) hardware="${enableval}"'';;
esac
fi
sim_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
sim_hw_obj=`echo $sim_hw_src | sed -e 's/\.c/.o/g'`
sim_ppc_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
sim_ppc_hw_obj=`echo $sim_ppc_hw_src | sed -e 's/\.c/.o/g'`
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardware" >&5
$as_echo "$hardware" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc icache settings" >&5
$as_echo_n "checking for sim ppc icache settings... " >&6; }
# Check whether --enable-sim-icache was given.
if test "${enable_sim_icache+set}" = set; then :
enableval=$enable_sim_icache; icache="-R"
# Check whether --enable-sim-ppc-icache was given.
if test "${enable_sim_ppc_icache+set}" = set; then :
enableval=$enable_sim_ppc_icache; icache="-R"
case "${enableval}" in
yes) icache="1024"; sim_icache="-I $icache";;
no) sim_icache="-R";;
yes) icache="1024"; sim_ppc_icache="-I $icache";;
no) sim_ppc_icache="-R";;
*) icache=1024
sim_icache="-"
sim_ppc_icache="-"
for x in `echo "${enableval}" | sed -e "s/,/ /g"`; do
case "$x" in
define) sim_icache="${sim_icache}R";;
semantic) sim_icache="${sim_icache}C";;
insn) sim_icache="${sim_icache}S";;
define) sim_ppc_icache="${sim_ppc_icache}R";;
semantic) sim_ppc_icache="${sim_ppc_icache}C";;
insn) sim_ppc_icache="${sim_ppc_icache}S";;
0*|1*|2*|3*|4*|5*|6*|7*|8*|9*) icache=$x;;
*) as_fn_error $? "\"Unknown value $x for --enable-sim-icache\"" "$LINENO" 5;;
*) as_fn_error $? "\"Unknown value $x for --enable-sim-ppc-icache\"" "$LINENO" 5;;
esac
done
sim_icache="${sim_icache}I $icache";;
sim_ppc_icache="${sim_ppc_icache}I $icache";;
esac
else
sim_icache="-CSRI 1024"
sim_ppc_icache="-CSRI 1024"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_icache" >&5
$as_echo "$sim_icache" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_icache" >&5
$as_echo "$sim_ppc_icache" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc jump settings" >&5
$as_echo_n "checking for sim ppc jump settings... " >&6; }
# Check whether --enable-sim-jump was given.
if test "${enable_sim_jump+set}" = set; then :
enableval=$enable_sim_jump; case "${enableval}" in
yes) sim_jump="-J";;
no) sim_jump="";;
*) as_fn_error $? "\"--enable-sim-jump does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-jump was given.
if test "${enable_sim_ppc_jump+set}" = set; then :
enableval=$enable_sim_ppc_jump; case "${enableval}" in
yes) sim_ppc_jump="-J";;
no) sim_ppc_jump="";;
*) as_fn_error $? "\"--enable-sim-ppc-jump does not take a value\"" "$LINENO" 5;;
esac
else
sim_jump=""
sim_ppc_jump=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_jump" >&5
$as_echo "$sim_jump" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_jump" >&5
$as_echo "$sim_ppc_jump" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc source debug line numbers" >&5
$as_echo_n "checking for sim ppc source debug line numbers... " >&6; }
# Check whether --enable-sim-line-nr was given.
if test "${enable_sim_line_nr+set}" = set; then :
enableval=$enable_sim_line_nr; case "${enableval}" in
yes) sim_line_nr="";;
no) sim_line_nr="-L";;
*) as_fn_error $? "\"--enable-sim-line-nr does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-line-nr was given.
if test "${enable_sim_ppc_line_nr+set}" = set; then :
enableval=$enable_sim_ppc_line_nr; case "${enableval}" in
yes) sim_ppc_line_nr="";;
no) sim_ppc_line_nr="-L";;
*) as_fn_error $? "\"--enable-sim-ppc-line-nr does not take a value\"" "$LINENO" 5;;
esac
else
sim_line_nr=""
sim_ppc_line_nr=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_line_nr" >&5
$as_echo "$sim_line_nr" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_line_nr" >&5
$as_echo "$sim_ppc_line_nr" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc model" >&5
$as_echo_n "checking for sim ppc model... " >&6; }
# Check whether --enable-sim-model was given.
if test "${enable_sim_model+set}" = set; then :
enableval=$enable_sim_model; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-model=model\"" "$LINENO" 5;;
*) sim_model="-DWITH_MODEL=${enableval}";;
# Check whether --enable-sim-ppc-model was given.
if test "${enable_sim_ppc_model+set}" = set; then :
enableval=$enable_sim_ppc_model; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-ppc-model=model\"" "$LINENO" 5;;
*) sim_ppc_model="-DWITH_MODEL=${enableval}";;
esac
else
sim_model=""
sim_ppc_model=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_model" >&5
$as_echo "$sim_model" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_model" >&5
$as_echo "$sim_ppc_model" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc model issue" >&5
$as_echo_n "checking for sim ppc model issue... " >&6; }
# Check whether --enable-sim-model-issue was given.
if test "${enable_sim_model_issue+set}" = set; then :
enableval=$enable_sim_model_issue; case "${enableval}" in
yes) sim_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_PROCESS";;
no) sim_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_IGNORE";;
*) as_fn_error $? "\"--enable-sim-model-issue does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-model-issue was given.
if test "${enable_sim_ppc_model_issue+set}" = set; then :
enableval=$enable_sim_ppc_model_issue; case "${enableval}" in
yes) sim_ppc_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_PROCESS";;
no) sim_ppc_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_IGNORE";;
*) as_fn_error $? "\"--enable-sim-ppc-model-issue does not take a value\"" "$LINENO" 5;;
esac
else
sim_model_issue=""
sim_ppc_model_issue=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_model_issue" >&5
$as_echo "$sim_model_issue" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_model_issue" >&5
$as_echo "$sim_ppc_model_issue" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc event monitoring" >&5
$as_echo_n "checking for sim ppc event monitoring... " >&6; }
# Check whether --enable-sim-monitor was given.
if test "${enable_sim_monitor+set}" = set; then :
enableval=$enable_sim_monitor; case "${enableval}" in
yes) sim_monitor="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
no) sim_monitor="-DWITH_MON=0";;
instruction) sim_monitor="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
memory) sim_monitor="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
*) as_fn_error $? "\"Unknown value $enableval passed to --enable-sim-mon\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-monitor was given.
if test "${enable_sim_ppc_monitor+set}" = set; then :
enableval=$enable_sim_ppc_monitor; case "${enableval}" in
yes) sim_ppc_monitor="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
no) sim_ppc_monitor="-DWITH_MON=0";;
instruction) sim_ppc_monitor="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
memory) sim_ppc_monitor="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
*) as_fn_error $? "\"Unknown value $enableval passed to --enable-sim-ppc-mon\"" "$LINENO" 5;;
esac
else
sim_monitor=""
sim_ppc_monitor=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_monitor" >&5
$as_echo "$sim_monitor" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_monitor" >&5
$as_echo "$sim_ppc_monitor" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc opcode lookup settings" >&5
$as_echo_n "checking for sim ppc opcode lookup settings... " >&6; }
# Check whether --enable-sim-opcode was given.
if test "${enable_sim_opcode+set}" = set; then :
enableval=$enable_sim_opcode; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-opcode=file\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-opcode was given.
if test "${enable_sim_ppc_opcode+set}" = set; then :
enableval=$enable_sim_ppc_opcode; case "${enableval}" in
yes|no) as_fn_error $? "\"No value supplied for --enable-sim-ppc-opcode=file\"" "$LINENO" 5;;
*) if test -f "${srcdir}/${enableval}"; then
sim_opcode="${enableval}"
sim_ppc_opcode="${enableval}"
elif test -f "${srcdir}/dc-${enableval}"; then
sim_opcode="dc-${enableval}"
sim_ppc_opcode="dc-${enableval}"
else
as_fn_error $? "\"File $enableval is not an opcode rules file\"" "$LINENO" 5
fi;;
esac
else
sim_opcode="dc-complex"
sim_ppc_opcode="dc-complex"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_opcode" >&5
$as_echo "$sim_opcode" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_opcode" >&5
$as_echo "$sim_ppc_opcode" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc smp settings" >&5
$as_echo_n "checking for sim ppc smp settings... " >&6; }
# Check whether --enable-sim-smp was given.
if test "${enable_sim_smp+set}" = set; then :
enableval=$enable_sim_smp; case "${enableval}" in
yes) sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5";;
no) sim_smp="-DWITH_SMP=0" ; sim_igen_smp="-N 0";;
*) sim_smp="-DWITH_SMP=$enableval" ; sim_igen_smp="-N $enableval";;
# Check whether --enable-sim-ppc-smp was given.
if test "${enable_sim_ppc_smp+set}" = set; then :
enableval=$enable_sim_ppc_smp; case "${enableval}" in
yes) sim_ppc_smp="-DWITH_SMP=5" ; sim_ppc_igen_smp="-N 5";;
no) sim_ppc_smp="-DWITH_SMP=0" ; sim_ppc_igen_smp="-N 0";;
*) sim_ppc_smp="-DWITH_SMP=$enableval" ; sim_ppc_igen_smp="-N $enableval";;
esac
else
sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5"
sim_ppc_smp="-DWITH_SMP=5" ; sim_ppc_igen_smp="-N 5"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_smp" >&5
$as_echo "$sim_smp" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_smp" >&5
$as_echo "$sim_ppc_smp" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc switch table settings" >&5
$as_echo_n "checking for sim ppc switch table settings... " >&6; }
# Check whether --enable-sim-switch was given.
if test "${enable_sim_switch+set}" = set; then :
enableval=$enable_sim_switch; case "${enableval}" in
yes) sim_switch="-DWITH_SPREG_SWITCH_TABLE";;
no) sim_switch="";;
*) as_fn_error $? "\"--enable-sim-switch does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-switch was given.
if test "${enable_sim_ppc_switch+set}" = set; then :
enableval=$enable_sim_ppc_switch; case "${enableval}" in
yes) sim_ppc_switch="-DWITH_SPREG_SWITCH_TABLE";;
no) sim_ppc_switch="";;
*) as_fn_error $? "\"--enable-sim-ppc-switch does not take a value\"" "$LINENO" 5;;
esac
else
sim_switch=""
sim_ppc_switch=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_switch" >&5
$as_echo "$sim_switch" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_switch" >&5
$as_echo "$sim_ppc_switch" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc timebase" >&5
$as_echo_n "checking for sim ppc timebase... " >&6; }
# Check whether --enable-sim-timebase was given.
if test "${enable_sim_timebase+set}" = set; then :
enableval=$enable_sim_timebase; case "${enableval}" in
yes) sim_timebase="-DWITH_TIME_BASE=1";;
no) sim_timebase="-DWITH_TIME_BASE=0";;
*) as_fn_error $? "\"--enable-sim-timebase does not take a value\"" "$LINENO" 5;;
# Check whether --enable-sim-ppc-timebase was given.
if test "${enable_sim_ppc_timebase+set}" = set; then :
enableval=$enable_sim_ppc_timebase; case "${enableval}" in
yes) sim_ppc_timebase="-DWITH_TIME_BASE=1";;
no) sim_ppc_timebase="-DWITH_TIME_BASE=0";;
*) as_fn_error $? "\"--enable-sim-ppc-timebase does not take a value\"" "$LINENO" 5;;
esac
else
sim_timebase=""
sim_ppc_timebase=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_timebase" >&5
$as_echo "$sim_timebase" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_timebase" >&5
$as_echo "$sim_ppc_timebase" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim ppc xor endian settings" >&5
$as_echo_n "checking for sim ppc xor endian settings... " >&6; }
# Check whether --enable-sim-xor-endian was given.
if test "${enable_sim_xor_endian+set}" = set; then :
enableval=$enable_sim_xor_endian; case "${enableval}" in
yes) sim_xor_endian="-DWITH_XOR_ENDIAN=8";;
no) sim_xor_endian="-DWITH_XOR_ENDIAN=0";;
*) sim_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
# Check whether --enable-sim-ppc-xor-endian was given.
if test "${enable_sim_ppc_xor_endian+set}" = set; then :
enableval=$enable_sim_ppc_xor_endian; case "${enableval}" in
yes) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=8";;
no) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=0";;
*) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
esac
else
sim_xor_endian=""
sim_ppc_xor_endian=""
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_xor_endian" >&5
$as_echo "$sim_xor_endian" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_ppc_xor_endian" >&5
$as_echo "$sim_ppc_xor_endian" >&6; }

View File

@ -3,232 +3,232 @@ AC_INIT(Makefile.in)
AC_CONFIG_MACRO_DIRS([../.. ../../config])
AC_MSG_CHECKING([for sim ppc bitsize settings])
AC_ARG_ENABLE(sim-bitsize,
[AS_HELP_STRING([--enable-sim-bitsize=n], [Specify target bitsize (32 or 64).])],
AC_ARG_ENABLE(sim-ppc-bitsize,
[AS_HELP_STRING([--enable-sim-ppc-bitsize=n], [Specify target bitsize (32 or 64).])],
[case "${enableval}" in
32|64) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
*) AC_MSG_ERROR("--enable-sim-bitsize was given $enableval. Expected 32 or 64");;
esac], [sim_bitsize=""])
AC_MSG_RESULT($sim_bitsize)
32|64) sim_ppc_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
*) AC_MSG_ERROR("--enable-sim-ppc-bitsize was given $enableval. Expected 32 or 64");;
esac], [sim_ppc_bitsize=""])
AC_MSG_RESULT($sim_ppc_bitsize)
AC_MSG_CHECKING([for sim ppc decode mechanism])
AC_ARG_ENABLE(sim-decode-mechanism,
[AS_HELP_STRING([--enable-sim-decode-mechanism=which], [Specify the instruction decode mechanism.])],
AC_ARG_ENABLE(sim-ppc-decode-mechanism,
[AS_HELP_STRING([--enable-sim-ppc-decode-mechanism=which], [Specify the instruction decode mechanism.])],
[case "${enableval}" in
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-decode-mechanism=file");;
array|switch|padded-switch|goto-switch) sim_decode_mechanism="-T ${enableval}";;
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-ppc-decode-mechanism=file");;
array|switch|padded-switch|goto-switch) sim_ppc_decode_mechanism="-T ${enableval}";;
*) AC_MSG_ERROR("File $enableval is not an opcode rules file");;
esac], [sim_decode_mechanism=""])
AC_MSG_RESULT($sim_decode_mechanism)
esac], [sim_ppc_decode_mechanism=""])
AC_MSG_RESULT($sim_ppc_decode_mechanism)
AC_MSG_CHECKING([for sim ppc default model])
AC_ARG_ENABLE(sim-default-model,
[AS_HELP_STRING([--enable-sim-default-model=which], [Specify default PowerPC to model.])],
AC_ARG_ENABLE(sim-ppc-default-model,
[AS_HELP_STRING([--enable-sim-ppc-default-model=which], [Specify default PowerPC to model.])],
[case "${enableval}" in
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-default-model=model");;
*) sim_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
esac], [sim_default_model=""])
AC_MSG_RESULT($sim_default_model)
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-ppc-default-model=model");;
*) sim_ppc_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
esac], [sim_ppc_default_model=""])
AC_MSG_RESULT($sim_ppc_default_model)
AC_MSG_CHECKING([for sim ppc duplicate settings])
AC_ARG_ENABLE(sim-duplicate,
[AS_HELP_STRING([--enable-sim-duplicate], [Expand (duplicate) semantic functions.])],
AC_ARG_ENABLE(sim-ppc-duplicate,
[AS_HELP_STRING([--enable-sim-ppc-duplicate], [Expand (duplicate) semantic functions.])],
[case "${enableval}" in
yes) sim_dup="-E";;
no) sim_dup="";;
*) AC_MSG_ERROR("--enable-sim-duplicate does not take a value");;
esac], [sim_dup="-E"])
AC_MSG_RESULT($sim_dup)
yes) sim_ppc_dup="-E";;
no) sim_ppc_dup="";;
*) AC_MSG_ERROR("--enable-sim-ppc-duplicate does not take a value");;
esac], [sim_ppc_dup="-E"])
AC_MSG_RESULT($sim_ppc_dup)
AC_MSG_CHECKING([for sim ppc filter rules])
AC_ARG_ENABLE(sim-filter,
[AS_HELP_STRING([--enable-sim-filter=rule], [Specify filter rules.])],
AC_ARG_ENABLE(sim-ppc-filter,
[AS_HELP_STRING([--enable-sim-ppc-filter=rule], [Specify filter rules.])],
[case "${enableval}" in
yes) AC_MSG_ERROR("--enable-sim-filter must be specified with a rule to filter or no");;
no) sim_filter="";;
*) sim_filter="-F $enableval";;
esac], [sim_filter="-F 32,f,o"])
AC_MSG_RESULT($sim_filter)
yes) AC_MSG_ERROR("--enable-sim-ppc-filter must be specified with a rule to filter or no");;
no) sim_ppc_filter="";;
*) sim_ppc_filter="-F $enableval";;
esac], [sim_ppc_filter="-F 32,f,o"])
AC_MSG_RESULT($sim_ppc_filter)
AC_MSG_CHECKING([for sim ppc float settings])
AC_ARG_ENABLE(sim-float,
[AS_HELP_STRING([--enable-sim-float], [Specify whether the target has hard, soft, altivec or e500 floating point.])],
AC_ARG_ENABLE(sim-ppc-float,
[AS_HELP_STRING([--enable-sim-ppc-float], [Specify whether the target has hard, soft, altivec or e500 floating point.])],
[case "${enableval}" in
yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
altivec) sim_float="-DWITH_ALTIVEC" ; sim_filter="${sim_filter},av" ;;
*spe*|*simd*) sim_float="-DWITH_E500" ; sim_filter="${sim_filter},e500" ;;
*) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-float");;
yes | hard) sim_ppc_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
no | soft) sim_ppc_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
altivec) sim_ppc_float="-DWITH_ALTIVEC" ; sim_ppc_filter="${sim_ppc_filter},av" ;;
*spe*|*simd*) sim_ppc_float="-DWITH_E500" ; sim_ppc_filter="${sim_ppc_filter},e500" ;;
*) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-ppc-float");;
esac],
[case "${target}" in
*altivec*) sim_float="-DWITH_ALTIVEC" ; sim_filter="${sim_filter},av" ;;
*spe*|*simd*) sim_float="-DWITH_E500" ; sim_filter="${sim_filter},e500" ;;
*) sim_float=""
*altivec*) sim_ppc_float="-DWITH_ALTIVEC" ; sim_ppc_filter="${sim_ppc_filter},av" ;;
*spe*|*simd*) sim_ppc_float="-DWITH_E500" ; sim_ppc_filter="${sim_ppc_filter},e500" ;;
*) sim_ppc_float=""
esac])
AC_MSG_RESULT($sim_float)
AC_MSG_RESULT($sim_ppc_float)
AC_MSG_CHECKING([for sim ppc hardware settings])
hardware="cpu,memory,nvram,iobus,htab,disk,trace,register,vm,init,core,pal,com,eeprom,opic,glue,phb,ide,sem,shm"
AC_ARG_ENABLE(sim-hardware,
[AS_HELP_STRING([--enable-sim-hardware=list], [Specify the hardware to be included in the build.])],
AC_ARG_ENABLE(sim-ppc-hardware,
[AS_HELP_STRING([--enable-sim-ppc-hardware=list], [Specify the hardware to be included in the build.])],
[case "${enableval}" in
yes) ;;
no) AC_MSG_ERROR("List of hardware must be specified for --enable-sim-hardware");;
no) AC_MSG_ERROR("List of hardware must be specified for --enable-sim-ppc-hardware");;
,*) hardware="${hardware}${enableval}";;
*,) hardware="${enableval}${hardware}";;
*) hardware="${enableval}"'';;
esac])
sim_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
sim_hw_obj=`echo $sim_hw_src | sed -e 's/\.c/.o/g'`
sim_ppc_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
sim_ppc_hw_obj=`echo $sim_ppc_hw_src | sed -e 's/\.c/.o/g'`
AC_MSG_RESULT($hardware)
AC_MSG_CHECKING([for sim ppc icache settings])
AC_ARG_ENABLE(sim-icache,
[AS_HELP_STRING([--enable-sim-icache=size], [Specify instruction-decode cache size and type.])],
AC_ARG_ENABLE(sim-ppc-icache,
[AS_HELP_STRING([--enable-sim-ppc-icache=size], [Specify instruction-decode cache size and type.])],
[icache="-R"
case "${enableval}" in
yes) icache="1024"; sim_icache="-I $icache";;
no) sim_icache="-R";;
yes) icache="1024"; sim_ppc_icache="-I $icache";;
no) sim_ppc_icache="-R";;
*) icache=1024
sim_icache="-"
sim_ppc_icache="-"
for x in `echo "${enableval}" | sed -e "s/,/ /g"`; do
case "$x" in
define) sim_icache="${sim_icache}R";;
semantic) sim_icache="${sim_icache}C";;
insn) sim_icache="${sim_icache}S";;
define) sim_ppc_icache="${sim_ppc_icache}R";;
semantic) sim_ppc_icache="${sim_ppc_icache}C";;
insn) sim_ppc_icache="${sim_ppc_icache}S";;
0*|1*|2*|3*|4*|5*|6*|7*|8*|9*) icache=$x;;
*) AC_MSG_ERROR("Unknown value $x for --enable-sim-icache");;
*) AC_MSG_ERROR("Unknown value $x for --enable-sim-ppc-icache");;
esac
done
sim_icache="${sim_icache}I $icache";;
esac], [sim_icache="-CSRI 1024"])
AC_MSG_RESULT($sim_icache)
sim_ppc_icache="${sim_ppc_icache}I $icache";;
esac], [sim_ppc_icache="-CSRI 1024"])
AC_MSG_RESULT($sim_ppc_icache)
AC_MSG_CHECKING([for sim ppc jump settings])
AC_ARG_ENABLE(sim-jump,
[AS_HELP_STRING([--enable-sim-jump], [Jump between semantic code (instead of call/return).])],
AC_ARG_ENABLE(sim-ppc-jump,
[AS_HELP_STRING([--enable-sim-ppc-jump], [Jump between semantic code (instead of call/return).])],
[case "${enableval}" in
yes) sim_jump="-J";;
no) sim_jump="";;
*) AC_MSG_ERROR("--enable-sim-jump does not take a value");;
esac], [sim_jump=""])
AC_MSG_RESULT($sim_jump)
yes) sim_ppc_jump="-J";;
no) sim_ppc_jump="";;
*) AC_MSG_ERROR("--enable-sim-ppc-jump does not take a value");;
esac], [sim_ppc_jump=""])
AC_MSG_RESULT($sim_ppc_jump)
AC_MSG_CHECKING([for sim ppc source debug line numbers])
AC_ARG_ENABLE(sim-line-nr,
[AS_HELP_STRING([--enable-sim-line-nr=opts], [Generate extra CPP code that references source rather than generated code])],
AC_ARG_ENABLE(sim-ppc-line-nr,
[AS_HELP_STRING([--enable-sim-ppc-line-nr=opts], [Generate extra CPP code that references source rather than generated code])],
[case "${enableval}" in
yes) sim_line_nr="";;
no) sim_line_nr="-L";;
*) AC_MSG_ERROR("--enable-sim-line-nr does not take a value");;
esac], [sim_line_nr=""])
AC_MSG_RESULT($sim_line_nr)
yes) sim_ppc_line_nr="";;
no) sim_ppc_line_nr="-L";;
*) AC_MSG_ERROR("--enable-sim-ppc-line-nr does not take a value");;
esac], [sim_ppc_line_nr=""])
AC_MSG_RESULT($sim_ppc_line_nr)
AC_MSG_CHECKING([for sim ppc model])
AC_ARG_ENABLE(sim-model,
[AS_HELP_STRING([--enable-sim-model=which], [Specify PowerPC to model.])],
AC_ARG_ENABLE(sim-ppc-model,
[AS_HELP_STRING([--enable-sim-ppc-model=which], [Specify PowerPC to model.])],
[case "${enableval}" in
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-model=model");;
*) sim_model="-DWITH_MODEL=${enableval}";;
esac], [sim_model=""])
AC_MSG_RESULT($sim_model)
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-ppc-model=model");;
*) sim_ppc_model="-DWITH_MODEL=${enableval}";;
esac], [sim_ppc_model=""])
AC_MSG_RESULT($sim_ppc_model)
AC_MSG_CHECKING([for sim ppc model issue])
AC_ARG_ENABLE(sim-model-issue,
[AS_HELP_STRING([--enable-sim-model-issue], [Specify whether to simulate model specific actions])],
AC_ARG_ENABLE(sim-ppc-model-issue,
[AS_HELP_STRING([--enable-sim-ppc-model-issue], [Specify whether to simulate model specific actions])],
[case "${enableval}" in
yes) sim_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_PROCESS";;
no) sim_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_IGNORE";;
*) AC_MSG_ERROR("--enable-sim-model-issue does not take a value");;
esac], [sim_model_issue=""])
AC_MSG_RESULT($sim_model_issue)
yes) sim_ppc_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_PROCESS";;
no) sim_ppc_model_issue="-DWITH_MODEL_ISSUE=MODEL_ISSUE_IGNORE";;
*) AC_MSG_ERROR("--enable-sim-ppc-model-issue does not take a value");;
esac], [sim_ppc_model_issue=""])
AC_MSG_RESULT($sim_ppc_model_issue)
AC_MSG_CHECKING([for sim ppc event monitoring])
AC_ARG_ENABLE(sim-monitor,
[AS_HELP_STRING([--enable-sim-monitor=mon], [Specify whether to enable monitoring events.])],
AC_ARG_ENABLE(sim-ppc-monitor,
[AS_HELP_STRING([--enable-sim-ppc-monitor=mon], [Specify whether to enable monitoring events.])],
[case "${enableval}" in
yes) sim_monitor="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
no) sim_monitor="-DWITH_MON=0";;
instruction) sim_monitor="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
memory) sim_monitor="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
*) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-mon");;
esac], [sim_monitor=""])
AC_MSG_RESULT($sim_monitor)
yes) sim_ppc_monitor="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
no) sim_ppc_monitor="-DWITH_MON=0";;
instruction) sim_ppc_monitor="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
memory) sim_ppc_monitor="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
*) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-ppc-mon");;
esac], [sim_ppc_monitor=""])
AC_MSG_RESULT($sim_ppc_monitor)
AC_MSG_CHECKING([for sim ppc opcode lookup settings])
AC_ARG_ENABLE(sim-opcode,
[AS_HELP_STRING([--enable-sim-opcode=which], [Override default opcode lookup.])],
AC_ARG_ENABLE(sim-ppc-opcode,
[AS_HELP_STRING([--enable-sim-ppc-opcode=which], [Override default opcode lookup.])],
[case "${enableval}" in
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-opcode=file");;
yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-ppc-opcode=file");;
*) if test -f "${srcdir}/${enableval}"; then
sim_opcode="${enableval}"
sim_ppc_opcode="${enableval}"
elif test -f "${srcdir}/dc-${enableval}"; then
sim_opcode="dc-${enableval}"
sim_ppc_opcode="dc-${enableval}"
else
AC_MSG_ERROR("File $enableval is not an opcode rules file")
fi;;
esac], [sim_opcode="dc-complex"])
AC_MSG_RESULT($sim_opcode)
esac], [sim_ppc_opcode="dc-complex"])
AC_MSG_RESULT($sim_ppc_opcode)
AC_MSG_CHECKING([for sim ppc smp settings])
AC_ARG_ENABLE(sim-smp,
[AS_HELP_STRING([--enable-sim-smp=n], [Specify number of processors to configure for.])],
AC_ARG_ENABLE(sim-ppc-smp,
[AS_HELP_STRING([--enable-sim-ppc-smp=n], [Specify number of processors to configure for.])],
[case "${enableval}" in
yes) sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5";;
no) sim_smp="-DWITH_SMP=0" ; sim_igen_smp="-N 0";;
*) sim_smp="-DWITH_SMP=$enableval" ; sim_igen_smp="-N $enableval";;
esac], [sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5"])
AC_MSG_RESULT($sim_smp)
yes) sim_ppc_smp="-DWITH_SMP=5" ; sim_ppc_igen_smp="-N 5";;
no) sim_ppc_smp="-DWITH_SMP=0" ; sim_ppc_igen_smp="-N 0";;
*) sim_ppc_smp="-DWITH_SMP=$enableval" ; sim_ppc_igen_smp="-N $enableval";;
esac], [sim_ppc_smp="-DWITH_SMP=5" ; sim_ppc_igen_smp="-N 5"])
AC_MSG_RESULT($sim_ppc_smp)
AC_MSG_CHECKING([for sim ppc switch table settings])
AC_ARG_ENABLE(sim-switch,
[AS_HELP_STRING([--enable-sim-switch], [Use a switch instead of a table for instruction call.])],
AC_ARG_ENABLE(sim-ppc-switch,
[AS_HELP_STRING([--enable-sim-ppc-switch], [Use a switch instead of a table for instruction call.])],
[case "${enableval}" in
yes) sim_switch="-DWITH_SPREG_SWITCH_TABLE";;
no) sim_switch="";;
*) AC_MSG_ERROR("--enable-sim-switch does not take a value");;
esac], [sim_switch=""])
AC_MSG_RESULT($sim_switch)
yes) sim_ppc_switch="-DWITH_SPREG_SWITCH_TABLE";;
no) sim_ppc_switch="";;
*) AC_MSG_ERROR("--enable-sim-ppc-switch does not take a value");;
esac], [sim_ppc_switch=""])
AC_MSG_RESULT($sim_ppc_switch)
AC_MSG_CHECKING([for sim ppc timebase])
AC_ARG_ENABLE(sim-timebase,
[AS_HELP_STRING([--enable-sim-timebase], [Specify whether the PPC timebase is supported.])],
AC_ARG_ENABLE(sim-ppc-timebase,
[AS_HELP_STRING([--enable-sim-ppc-timebase], [Specify whether the PPC timebase is supported.])],
[case "${enableval}" in
yes) sim_timebase="-DWITH_TIME_BASE=1";;
no) sim_timebase="-DWITH_TIME_BASE=0";;
*) AC_MSG_ERROR("--enable-sim-timebase does not take a value");;
esac], [sim_timebase=""])
AC_MSG_RESULT($sim_timebase)
yes) sim_ppc_timebase="-DWITH_TIME_BASE=1";;
no) sim_ppc_timebase="-DWITH_TIME_BASE=0";;
*) AC_MSG_ERROR("--enable-sim-ppc-timebase does not take a value");;
esac], [sim_ppc_timebase=""])
AC_MSG_RESULT($sim_ppc_timebase)
AC_MSG_CHECKING([for sim ppc xor endian settings])
AC_ARG_ENABLE(sim-xor-endian,
[AS_HELP_STRING([--enable-sim-xor-endian=n], [Specify number bytes involved in PowerPC XOR bi-endian mode (default 8).])],
AC_ARG_ENABLE(sim-ppc-xor-endian,
[AS_HELP_STRING([--enable-sim-ppc-xor-endian=n], [Specify number bytes involved in PowerPC XOR bi-endian mode (default 8).])],
[case "${enableval}" in
yes) sim_xor_endian="-DWITH_XOR_ENDIAN=8";;
no) sim_xor_endian="-DWITH_XOR_ENDIAN=0";;
*) sim_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
esac], [sim_xor_endian=""])
AC_MSG_RESULT($sim_xor_endian)
yes) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=8";;
no) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=0";;
*) sim_ppc_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
esac], [sim_ppc_xor_endian=""])
AC_MSG_RESULT($sim_ppc_xor_endian)
AC_SUBST(sim_line_nr)
AC_SUBST(sim_opcode)
AC_SUBST(sim_switch)
AC_SUBST(sim_dup)
AC_SUBST(sim_decode_mechanism)
AC_SUBST(sim_jump)
AC_SUBST(sim_filter)
AC_SUBST(sim_icache)
AC_SUBST(sim_hw_src)
AC_SUBST(sim_hw_obj)
AC_SUBST(sim_xor_endian)
AC_SUBST(sim_smp)
AC_SUBST(sim_igen_smp)
AC_SUBST(sim_bitsize)
AC_SUBST(sim_timebase)
AC_SUBST(sim_float)
AC_SUBST(sim_monitor)
AC_SUBST(sim_model)
AC_SUBST(sim_default_model)
AC_SUBST(sim_model_issue)
AC_SUBST(sim_ppc_line_nr)
AC_SUBST(sim_ppc_opcode)
AC_SUBST(sim_ppc_switch)
AC_SUBST(sim_ppc_dup)
AC_SUBST(sim_ppc_decode_mechanism)
AC_SUBST(sim_ppc_jump)
AC_SUBST(sim_ppc_filter)
AC_SUBST(sim_ppc_icache)
AC_SUBST(sim_ppc_hw_src)
AC_SUBST(sim_ppc_hw_obj)
AC_SUBST(sim_ppc_xor_endian)
AC_SUBST(sim_ppc_smp)
AC_SUBST(sim_ppc_igen_smp)
AC_SUBST(sim_ppc_bitsize)
AC_SUBST(sim_ppc_timebase)
AC_SUBST(sim_ppc_float)
AC_SUBST(sim_ppc_monitor)
AC_SUBST(sim_ppc_model)
AC_SUBST(sim_ppc_default_model)
AC_SUBST(sim_ppc_model_issue)
AC_OUTPUT(Makefile)