URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Subversion Repositories openrisc_2011-10-31
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/or1ksim
- from Rev 430 to Rev 432
- ↔ Reverse comparison
Rev 430 → Rev 432
/configure
1,14 → 1,16
#! /bin/sh |
# From configure.ac Id: configure.ac 420 2010-11-11 14:43:33Z jeremybennett using automake version AC_ACVERSION. |
# Guess values for system-dependent variables and create Makefiles. |
# Generated by GNU Autoconf 2.64 for or1ksim 2010-11-11. |
# Generated by GNU Autoconf 2.65 for or1ksim 2010-11-25. |
# |
# Report bugs to <openrisc@opencores.org>. |
# |
# |
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, |
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software |
# Foundation, Inc. |
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, |
# Inc. |
# |
# |
# This configure script is free software; the Free Software Foundation |
# gives unlimited permission to copy, distribute and modify it. |
# |
697,7 → 699,8
|
|
|
exec 7<&0 </dev/null 6>&1 |
test -n "$DJDIR" || exec 7<&0 </dev/null |
exec 6>&1 |
|
# Name of the host. |
# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, |
719,8 → 722,8
# Identity of this package. |
PACKAGE_NAME='or1ksim' |
PACKAGE_TARNAME='or1ksim' |
PACKAGE_VERSION='2010-11-11' |
PACKAGE_STRING='or1ksim 2010-11-11' |
PACKAGE_VERSION='2010-11-25' |
PACKAGE_STRING='or1ksim 2010-11-25' |
PACKAGE_BUGREPORT='openrisc@opencores.org' |
PACKAGE_URL='' |
|
1473,7 → 1476,7
# Omit some internal or obsolete options to make the list less imposing. |
# This message is too long to be a string in the A/UX 3.1 sh. |
cat <<_ACEOF |
\`configure' configures or1ksim 2010-11-11 to adapt to many kinds of systems. |
\`configure' configures or1ksim 2010-11-25 to adapt to many kinds of systems. |
|
Usage: $0 [OPTION]... [VAR=VALUE]... |
|
1544,7 → 1547,7
|
if test -n "$ac_init_help"; then |
case $ac_init_help in |
short | recursive ) echo "Configuration of or1ksim 2010-11-11:";; |
short | recursive ) echo "Configuration of or1ksim 2010-11-25:";; |
esac |
cat <<\_ACEOF |
|
1579,7 → 1582,7
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a |
nonstandard directory <lib dir> |
LIBS libraries to pass to the linker, e.g. -l<library> |
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if |
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if |
you have headers in a nonstandard directory <include dir> |
CPP C preprocessor |
CCAS assembler compiler command (defaults to CC) |
1651,8 → 1654,8
test -n "$ac_init_help" && exit $ac_status |
if $ac_init_version; then |
cat <<\_ACEOF |
or1ksim configure 2010-11-11 |
generated by GNU Autoconf 2.64 |
or1ksim configure 2010-11-25 |
generated by GNU Autoconf 2.65 |
|
Copyright (C) 2009 Free Software Foundation, Inc. |
This configure script is free software; the Free Software Foundation |
1719,7 → 1722,7
ac_retval=1 |
fi |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_compile |
|
1756,7 → 1759,7
ac_retval=1 |
fi |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_cpp |
|
1891,7 → 1894,7
fi |
rm -rf conftest.dSYM conftest_ipa8_conftest.oo |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_run |
|
1968,7 → 1971,7
# left behind by Apple's compiler. We do this before executing the actions. |
rm -rf conftest.dSYM conftest_ipa8_conftest.oo |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_link |
|
2306,7 → 2309,7
|
fi |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_compute_int |
cat >config.log <<_ACEOF |
2313,8 → 2316,8
This file contains any messages produced by compilers while |
running configure, to aid debugging if configure makes a mistake. |
|
It was created by or1ksim $as_me 2010-11-11, which was |
generated by GNU Autoconf 2.64. Invocation command line was |
It was created by or1ksim $as_me 2010-11-25, which was |
generated by GNU Autoconf 2.65. Invocation command line was |
|
$ $0 $@ |
|
2567,7 → 2570,7
for ac_site_file in "$ac_site_file1" "$ac_site_file2" |
do |
test "x$ac_site_file" = xNONE && continue |
if test -r "$ac_site_file"; then |
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then |
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 |
$as_echo "$as_me: loading site script $ac_site_file" >&6;} |
sed 's/^/| /' "$ac_site_file" >&5 |
2576,9 → 2579,9
done |
|
if test -r "$cache_file"; then |
# Some versions of bash will fail to source /dev/null (special |
# files actually), so we avoid doing that. |
if test -f "$cache_file"; then |
# Some versions of bash will fail to source /dev/null (special files |
# actually), so we avoid doing that. DJGPP emulates it as a regular file. |
if test /dev/null != "$cache_file" && test -f "$cache_file"; then |
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 |
$as_echo "$as_me: loading cache $cache_file" >&6;} |
case $cache_file in |
2985,8 → 2988,8
... rest of stderr output deleted ... |
10q' conftest.err >conftest.er1 |
cat conftest.er1 >&5 |
rm -f conftest.er1 conftest.err |
fi |
rm -f conftest.er1 conftest.err |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; } |
done |
2993,12 → 2996,10
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
/* end confdefs.h. */ |
#include <stdio.h> |
|
int |
main () |
{ |
FILE *f = fopen ("conftest.out", "w"); |
return ferror (f) || fclose (f) != 0; |
|
; |
return 0; |
3005,12 → 3006,12
} |
_ACEOF |
ac_clean_files_save=$ac_clean_files |
ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out" |
ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" |
# Try to create an executable without -o first, disregard a.out. |
# It will help us diagnose broken compilers, and finding out an intuition |
# of exeext. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 |
$as_echo_n "checking for C compiler default output file name... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 |
$as_echo_n "checking whether the C compiler works... " >&6; } |
ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` |
|
# The possible output files: |
3072,10 → 3073,10
else |
ac_file='' |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 |
$as_echo "$ac_file" >&6; } |
if test -z "$ac_file"; then : |
$as_echo "$as_me: failed program was:" >&5 |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
$as_echo "no" >&6; } |
$as_echo "$as_me: failed program was:" >&5 |
sed 's/^/| /' conftest.$ac_ext >&5 |
|
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
3083,51 → 3084,18
{ as_fn_set_status 77 |
as_fn_error "C compiler cannot create executables |
See \`config.log' for more details." "$LINENO" 5; }; } |
else |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
$as_echo "yes" >&6; } |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 |
$as_echo_n "checking for C compiler default output file name... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 |
$as_echo "$ac_file" >&6; } |
ac_exeext=$ac_cv_exeext |
|
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 |
$as_echo_n "checking whether the C compiler works... " >&6; } |
# If not cross compiling, check that we can run a simple program. |
if test "$cross_compiling" != yes; then |
if { ac_try='./$ac_file' |
{ { case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_try") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; }; }; then |
cross_compiling=no |
else |
if test "$cross_compiling" = maybe; then |
cross_compiling=yes |
else |
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
as_fn_error "cannot run C compiled programs. |
If you meant to cross compile, use \`--host'. |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
fi |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
$as_echo "yes" >&6; } |
|
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out |
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out |
ac_clean_files=$ac_clean_files_save |
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 |
$as_echo_n "checking whether we are cross compiling... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 |
$as_echo "$cross_compiling" >&6; } |
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 |
$as_echo_n "checking for suffix of executables... " >&6; } |
if { { ac_try="$ac_link" |
3160,7 → 3128,7
as_fn_error "cannot compute suffix of executables: cannot compile and link |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
rm -f conftest$ac_cv_exeext |
rm -f conftest conftest$ac_cv_exeext |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 |
$as_echo "$ac_cv_exeext" >&6; } |
|
3167,6 → 3135,65
rm -f conftest.$ac_ext |
EXEEXT=$ac_cv_exeext |
ac_exeext=$EXEEXT |
cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
/* end confdefs.h. */ |
#include <stdio.h> |
int |
main () |
{ |
FILE *f = fopen ("conftest.out", "w"); |
return ferror (f) || fclose (f) != 0; |
|
; |
return 0; |
} |
_ACEOF |
ac_clean_files="$ac_clean_files conftest.out" |
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 |
$as_echo_n "checking whether we are cross compiling... " >&6; } |
if test "$cross_compiling" != yes; then |
{ { ac_try="$ac_link" |
case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_link") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; } |
if { ac_try='./conftest$ac_cv_exeext' |
{ { case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_try") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; }; }; then |
cross_compiling=no |
else |
if test "$cross_compiling" = maybe; then |
cross_compiling=yes |
else |
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
as_fn_error "cannot run C compiled programs. |
If you meant to cross compile, use \`--host'. |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
fi |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 |
$as_echo "$cross_compiling" >&6; } |
|
rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out |
ac_clean_files=$ac_clean_files_save |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 |
$as_echo_n "checking for suffix of object files... " >&6; } |
if test "${ac_cv_objext+set}" = set; then : |
4512,13 → 4539,13
else |
lt_cv_nm_interface="BSD nm" |
echo "int some_variable = 0;" > conftest.$ac_ext |
(eval echo "\"\$as_me:4515: $ac_compile\"" >&5) |
(eval echo "\"\$as_me:4542: $ac_compile\"" >&5) |
(eval "$ac_compile" 2>conftest.err) |
cat conftest.err >&5 |
(eval echo "\"\$as_me:4518: $NM \\\"conftest.$ac_objext\\\"\"" >&5) |
(eval echo "\"\$as_me:4545: $NM \\\"conftest.$ac_objext\\\"\"" >&5) |
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) |
cat conftest.err >&5 |
(eval echo "\"\$as_me:4521: output\"" >&5) |
(eval echo "\"\$as_me:4548: output\"" >&5) |
cat conftest.out >&5 |
if $GREP 'External.*some_variable' conftest.out > /dev/null; then |
lt_cv_nm_interface="MS dumpbin" |
5723,7 → 5750,7
;; |
*-*-irix6*) |
# Find out which ABI we are using. |
echo '#line 5726 "configure"' > conftest.$ac_ext |
echo '#line 5753 "configure"' > conftest.$ac_ext |
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 |
(eval $ac_compile) 2>&5 |
ac_status=$? |
6985,11 → 7012,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:6988: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7015: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>conftest.err) |
ac_status=$? |
cat conftest.err >&5 |
echo "$as_me:6992: \$? = $ac_status" >&5 |
echo "$as_me:7019: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s "$ac_outfile"; then |
# The compiler can only warn and ignore the option if not recognized |
# So say no if there are warnings other than the usual output. |
7324,11 → 7351,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:7327: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7354: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>conftest.err) |
ac_status=$? |
cat conftest.err >&5 |
echo "$as_me:7331: \$? = $ac_status" >&5 |
echo "$as_me:7358: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s "$ac_outfile"; then |
# The compiler can only warn and ignore the option if not recognized |
# So say no if there are warnings other than the usual output. |
7429,11 → 7456,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:7432: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7459: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>out/conftest.err) |
ac_status=$? |
cat out/conftest.err >&5 |
echo "$as_me:7436: \$? = $ac_status" >&5 |
echo "$as_me:7463: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s out/conftest2.$ac_objext |
then |
# The compiler can only warn and ignore the option if not recognized |
7484,11 → 7511,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:7487: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7514: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>out/conftest.err) |
ac_status=$? |
cat out/conftest.err >&5 |
echo "$as_me:7491: \$? = $ac_status" >&5 |
echo "$as_me:7518: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s out/conftest2.$ac_objext |
then |
# The compiler can only warn and ignore the option if not recognized |
9867,7 → 9894,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
lt_status=$lt_dlunknown |
cat > conftest.$ac_ext <<_LT_EOF |
#line 9870 "configure" |
#line 9897 "configure" |
#include "confdefs.h" |
|
#if HAVE_DLFCN_H |
9963,7 → 9990,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
lt_status=$lt_dlunknown |
cat > conftest.$ac_ext <<_LT_EOF |
#line 9966 "configure" |
#line 9993 "configure" |
#include "confdefs.h" |
|
#if HAVE_DLFCN_H |
10504,6 → 10531,7
|
fi |
|
test -d ./--version && rmdir ./--version |
if test "${ac_cv_path_mkdir+set}" = set; then |
MKDIR_P="$ac_cv_path_mkdir -p" |
else |
10511,7 → 10539,6
# value for MKDIR_P within a source directory, because that will |
# break other packages using the cache if that directory is |
# removed, or if the value is a relative name. |
test -d ./--version && rmdir ./--version |
MKDIR_P="$ac_install_sh -d" |
fi |
fi |
10690,7 → 10717,7
|
# Define the identity of the package. |
PACKAGE='or1ksim' |
VERSION='2010-11-11' |
VERSION='2010-11-25' |
|
|
cat >>confdefs.h <<_ACEOF |
11358,8 → 11385,8
... rest of stderr output deleted ... |
10q' conftest.err >conftest.er1 |
cat conftest.er1 >&5 |
rm -f conftest.er1 conftest.err |
fi |
rm -f conftest.er1 conftest.err |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; } |
done |
13709,8 → 13736,8
# report actual input values of CONFIG_FILES etc. instead of their |
# values after options handling. |
ac_log=" |
This file was extended by or1ksim $as_me 2010-11-11, which was |
generated by GNU Autoconf 2.64. Invocation command line was |
This file was extended by or1ksim $as_me 2010-11-25, which was |
generated by GNU Autoconf 2.65. Invocation command line was |
|
CONFIG_FILES = $CONFIG_FILES |
CONFIG_HEADERS = $CONFIG_HEADERS |
13750,6 → 13777,7
|
-h, --help print this help, then exit |
-V, --version print version number and configuration settings, then exit |
--config print configuration, then exit |
-q, --quiet, --silent |
do not print progress messages |
-d, --debug don't remove temporary files |
13772,10 → 13800,11
|
_ACEOF |
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
ac_cs_version="\\ |
or1ksim config.status 2010-11-11 |
configured by $0, generated by GNU Autoconf 2.64, |
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" |
or1ksim config.status 2010-11-25 |
configured by $0, generated by GNU Autoconf 2.65, |
with options \\"\$ac_cs_config\\" |
|
Copyright (C) 2009 Free Software Foundation, Inc. |
This config.status script is free software; the Free Software Foundation |
13813,6 → 13842,8
ac_cs_recheck=: ;; |
--version | --versio | --versi | --vers | --ver | --ve | --v | -V ) |
$as_echo "$ac_cs_version"; exit ;; |
--config | --confi | --conf | --con | --co | --c ) |
$as_echo "$ac_cs_config"; exit ;; |
--debug | --debu | --deb | --de | --d | -d ) |
debug=: ;; |
--file | --fil | --fi | --f ) |
14287,7 → 14318,7
t delim |
:nl |
h |
s/\(.\{148\}\).*/\1/ |
s/\(.\{148\}\)..*/\1/ |
t more1 |
s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ |
p |
14301,7 → 14332,7
t nl |
:delim |
h |
s/\(.\{148\}\).*/\1/ |
s/\(.\{148\}\)..*/\1/ |
t more2 |
s/["\\]/\\&/g; s/^/"/; s/$/"/ |
p |
/sim-config.h
142,6 → 142,7
{ |
int enabled; /* Is interrupt controller enabled? */ |
int edge_trigger; /* Are interrupts edge triggered? */ |
int use_nmi; /* Do we have non-maskable interrupts? */ |
} pic; |
|
struct |
/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
645,7 → 645,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
670,7 → 670,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
834,7 → 834,8
fi; \ |
done |
-test -n "$(am__skip_mode_fix)" \ |
|| find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ |
|| find "$(distdir)" -type d ! -perm -755 \ |
-exec chmod u+rwx,go+rx {} \; -o \ |
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ |
! -type d ! -perm -400 -exec chmod a+r {} \; -o \ |
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ |
878,17 → 879,17
distcheck: dist |
case '$(DIST_ARCHIVES)' in \ |
*.tar.gz*) \ |
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ |
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ |
*.tar.bz2*) \ |
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ |
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ |
*.tar.lzma*) \ |
unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ |
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ |
*.tar.xz*) \ |
xz -dc $(distdir).tar.xz | $(am__untar) ;;\ |
*.tar.Z*) \ |
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ |
*.shar.gz*) \ |
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ |
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ |
*.zip*) \ |
unzip $(distdir).zip ;;\ |
esac |
/port/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/debug/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/cpu/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
292,7 → 292,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
317,7 → 317,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
/cpu/or32/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/cpu/dlx/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/cpu/common/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/cpu/or1k/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/cpu/or1k/sprs.c
159,6 → 159,13
cpu_state.sprs[SPR_PICSR] = prev_val; |
break; |
case SPR_PICMR: |
/* If we have non-maskable interrupts, then the bottom two bits are always |
one. */ |
if (config.pic.use_nmi) |
{ |
cpu_state.sprs[SPR_SR] |= 0x00000003; |
} |
|
if(cpu_state.sprs[SPR_SR] & SPR_SR_IEE) |
pic_ints_en(); |
break; |
/cpu/or1k/spr-defs.h
153,7 → 153,6
|
/* PIC group */ |
#define SPR_PICMR (SPRGROUP_PIC + 0) |
#define SPR_PICPR (SPRGROUP_PIC + 1) |
#define SPR_PICSR (SPRGROUP_PIC + 2) |
|
/* Tick Timer group */ |
569,12 → 568,6
#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ |
|
/* |
* Bit definitions for PICPR |
* |
*/ |
#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ |
|
/* |
* Bit definitions for PICSR |
* |
*/ |
/tick/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/softfloat/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/libtoplevel.c
219,9 → 219,9
} |
} |
|
/* Clear any interrupts as requested. For edge triggered interrupts this |
will happen in the same cycle. For level triggered, it must be an |
explicit call. */ |
/* Clear any interrupts as requested. This only applies to level |
sensitive interrupts. Edge triggered are cleared by writing to |
PICSR. */ |
if (0 != runtime.sim.ext_int_clr) |
{ |
for (i = 0; i < num_ints; i++) |
348,8 → 348,8
/*---------------------------------------------------------------------------*/ |
/*!Trigger an edge triggered interrupt |
|
This function is appropriate for edge triggered interrupts, which are taken |
and then immediately cleared. |
This function is appropriate for edge triggered interrupts. These are |
cleared by writing to the PICSR SPR. |
|
@note There is no check that the specified interrupt number is reasonable |
(i.e. <= 31). |
367,7 → 367,6
else |
{ |
runtime.sim.ext_int_set |= 1 << i; // Better not be > 31! |
runtime.sim.ext_int_clr |= 1 << i; // Better not be > 31! |
} |
} /* or1ksim_interrupt () */ |
|
/cache/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/argtable2/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/configure.ac
28,7 → 28,7
|
# Use a full version number (x.y.z, possibly with "rcn" as a suffix) when |
# preparing a release, otherwise use a the date version (yyyy-mm-dd). |
AC_INIT([or1ksim], [2010-11-11], [openrisc@opencores.org]) |
AC_INIT([or1ksim], [2010-11-25], [openrisc@opencores.org]) |
AC_CONFIG_MACRO_DIR([m4]) |
|
# Generically use extensions such as _GNU_SOURCE if available. |
/doc/or1ksim.info
1,5 → 1,5
This is ../../or1ksim/doc/or1ksim.info, produced by makeinfo version |
4.13 from ../../or1ksim/doc/or1ksim.texi. |
This is ../../doc/or1ksim.info, produced by makeinfo version 4.13 from |
../../doc/or1ksim.texi. |
|
INFO-DIR-SECTION Embedded development |
START-INFO-DIR-ENTRY |
64,7 → 64,7
Unpack the software and create a _separate_ directory in which to build |
it: |
|
tar jxf or1ksim-2010-11-11.tar.bz2 |
tar jxf or1ksim-2010-11-25.tar.bz2 |
mkdir builddir_or1ksim |
cd builddir_or1ksim |
|
81,7 → 81,7
OpenRISC 1000 32-bit architecture. If this argument is omitted, it will |
default to OpenRISC 1000 32-bit with a warning |
|
../or1ksim-2010-11-11/configure --target=or32-uclinux ... |
../or1ksim-2010-11-25/configure --target=or32-uclinux ... |
|
There are several other options available, many of which are standard |
to GNU `configure' scripts. Use `configure --help' to see all the |
522,12 → 522,11
functions exported by the Or1ksim library. These are: |
|
-- `or1ksim.h': int or1ksim_init (int ARGC, char *ARGV, void |
*CLASS_PTR, |
int (*UPR)(void *CLASS_PTR, unsigned long int ADDR, unsigned char |
MASK[], unsigned char RDATA[], int DATA_LEN), int (*UPW)(void |
*CLASS_PTR, unsigned long int ADDR, unsigned char MASK[], unsigned |
char WDATA[], int DATA_LEN)) |
|
*CLASS_PTR, int (*UPR)(void *CLASS_PTR, unsigned long int |
ADDR, unsigned char MASK[], unsigned char RDATA[], int |
DATA_LEN), int (*UPW)(void *CLASS_PTR, unsigned long int |
ADDR, unsigned char MASK[], unsigned char WDATA[], int |
DATA_LEN)) |
The initialization function is supplied with a vector of arguments, |
which are interpreted as arguments to the standalone version (see |
*note Standalone Simulator: Standalone Simulator.), a pointer to |
609,20 → 608,24
|
-- `or1ksim.h': void or1ksim_interrupt (int I) |
Generate an edge-triggered interrupt on interrupt line I. The |
interrupt is then immediately cleared automatically. A warning |
will be generated and the interrupt request ignored if level |
sensitive interrupts have been configured with the programmable |
interrupt controller (*note Interrupt Configuration: Interrupt |
Configuration.). |
interrupt must be cleared separately by clearing the corresponding |
bit in the PICSR SPR. Until the interrupt is cleared, any further |
interrupts on the same line will be ignored with a warning. A |
warning will be generated and the interrupt request ignored if |
level sensitive interrupts have been configured with the |
programmable interrupt controller (*note Interrupt Configuration: |
Interrupt Configuration.). |
|
|
-- `or1ksim.h': void or1ksim_interrupt_set (int I) |
Assert a level-triggered interrupt on interrupt line I. The |
interrupt must be cleared separately by an explicit call to |
`or1ksim_interrupt_clear'. A warning will be generated, and the |
interrupt request ignored if edge sensitive interrupts have been |
configured with the programmable interrupt controller (*note |
Interrupt Configuration: Interrupt Configuration.). |
`or1ksim_interrupt_clear'. Until the interrupt is cleared, any |
further setting of interrupts on the same line will be ignored |
with a warning. A warning will be generated, and the interrupt |
request ignored if edge sensitive interrupts have been configured |
with the programmable interrupt controller (*note Interrupt |
Configuration: Interrupt Configuration.). |
|
|
-- `or1ksim.h': void or1ksim_interrupt_clear (int I) |
642,9 → 645,8
processor clock cycles to complete. |
|
|
-- `or1ksim.h': double or1ksim_jtag_shift_ir (unsigned |
char *JREG, int NUM_BITS) |
|
-- `or1ksim.h': double or1ksim_jtag_shift_ir (unsigned char *JREG, int |
NUM_BITS) |
Shift the supplied register through the JTAG instruction register. |
Return the (model) time taken for this action. The register is |
supplied as a byte vector, with the least significant bits in the |
656,9 → 658,8
bits 11-8 in the least significant 4 bits of byte 1. |
|
|
-- `or1ksim.h': double or1ksim_jtag_shift_dr (unsigned |
char *JREG, int NUM_BITS) |
|
-- `or1ksim.h': double or1ksim_jtag_shift_dr (unsigned char *JREG, int |
NUM_BITS) |
Shift the supplied register through the JTAG data register. |
Return the (model) time taken for this action. The register is |
supplied as a byte vector, with the least significant bits in the |
670,9 → 671,8
bits 11-8 in the least significant 4 bits of byte 1. |
|
|
-- `or1ksim.h': int or1ksim_read_mem (unsigned |
long int ADDR, unsigned char *BUF, int LEN) |
|
-- `or1ksim.h': int or1ksim_read_mem (unsigned long int ADDR, unsigned |
char *BUF, int LEN) |
Read LEN bytes from ADDR, placing the result in BUF. Return LEN |
on success and 0 on failure. |
|
679,9 → 679,8
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': int or1ksim_write_mem (unsigned |
long int ADDR, const unsigned char *BUF, int LEN) |
|
-- `or1ksim.h': int or1ksim_write_mem (unsigned long int ADDR, const |
unsigned char *BUF, int LEN) |
Write LEN bytes to ADDR, taking the data from BUF. Return LEN on |
success and 0 on failure. |
|
688,9 → 687,8
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': int or1ksim_read_spr (int SPRNUM, unsigned |
long int *SPRVAL_PTR) |
|
-- `or1ksim.h': int or1ksim_read_spr (int SPRNUM, unsigned long int |
*SPRVAL_PTR) |
Read the SPR specified by SPRNUM, placing the result in |
SPRVAL_PTR. Return non-zero on success and 0 on failure. |
|
697,9 → 695,8
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': int or1ksim_write_spr (int SPRNUM, unsigned |
long int SPRVA) |
|
-- `or1ksim.h': int or1ksim_write_spr (int SPRNUM, unsigned long int |
SPRVA) |
Write SPRVAL to the SPR specified by SPRNUM. Return non-zero on |
success and 0 on failure. |
|
706,9 → 703,8
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': int or1ksim_read_reg (int REGNUM, unsigned |
long int *REGVAL_PTR) |
|
-- `or1ksim.h': int or1ksim_read_reg (int REGNUM, unsigned long int |
*REGVAL_PTR) |
Read the general purpose register specified by REGNUM, placing the |
result in REGVAL_PTR. Return non-zero on success and 0 on failure. |
|
715,9 → 711,8
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': int or1ksim_write_reg (int REGNUM, unsigned |
long int REGVA) |
|
-- `or1ksim.h': int or1ksim_write_reg (int REGNUM, unsigned long int |
REGVA) |
Write REGVAL to the general purpose register specified by REGNUM. |
Return non-zero on success and 0 on failure. |
|
724,9 → 719,7
Note: This function was added in Or1ksim 0.5.0. |
|
|
-- `or1ksim.h': void or1ksim_set_stall_state (int |
STATE) |
|
-- `or1ksim.h': void or1ksim_set_stall_state (int STATE) |
Set the processor's state according to STATE (1 = stalled, 0 = not |
stalled). |
|
1549,23 → 1542,29
If 1 (true, the default), the programmable interrupt controller is |
edge triggered. If 0 (false), it is level triggered. |
|
Note: When configured to be edge triggered, interrupts must |
be cleared in the PICSR by the processor writing a '0' to the |
appropriate bit. |
The library interface (*note Simulator Library: Simulator Library.) |
provides different functions for setting the different types of |
interrupt, and a function to clear level sensitive interrupts. Edge |
sensitive interrupts must be cleared by clearing the corresponding |
bit in the PICSR SPR. |
|
When configured to be level triggered, the interrupt must be |
cleared by lowering the peripheral's IRQ line. Writing '0' to |
the PICSR has no effect. |
Internal functions to set and clear interrupts are also provided |
for peripherals implemented within Or1ksim. *Note Interrupts |
Internal: Interrupts Internal for more details. |
|
Peripherals can call the function `report_interrupt' to |
signal an interrupt request. When configured for level |
triggered interrupts, the function `clear_interrupt' will |
clear the appropriate bit in the PICSR. `clear_interrupt' has |
no effect when Or1ksim is configured for edge triggered |
interrupts - interrupts must be cleared by the processor |
writing '0' to the appropriate bit in the PICSR in this case. |
`use_nmi = 0|1' |
If 1 (true, the default), interrupt lines 0 and 1 are |
non-maskable. In other words the least significant 2 bits of the |
PICMR SPR are hard-wired to 1. If 0 (false), all interrupt lines |
are treated as equivalent. |
|
Note: These are not non-maskable in the true sense that they |
will pre-empt other interrupts. Rather they can never be |
masked out using the PICMR register. It is up the interrupt |
exception handler to give these interrupt lines priority, and |
indeed to decide on the priority order in general. |
|
|
|
File: or1ksim.info, Node: Power Management Configuration, Next: Branch Prediction Configuration, Prev: Interrupt Configuration, Up: Core OpenRISC Configuration |
|
2975,7 → 2974,31
that function will be called with the data stucture pointer as |
argument. |
|
_Interrupts_ |
An internal peripheral can model the effect of an interrupt being |
asserted by calling `report_interrupt'. This is used for both edge |
and level sensitive interrupts. |
|
The effect is to set the corresponding bit in the PICSR SPR and to |
queue an interrupt exception to take place after the current |
instruction completes execution. |
|
Externally, the different interrupts require different mechanisms |
for clearing. Level sensitive interrupts should be cleared by |
deasserting the interrupt line, edge sensitive interrupts by |
clearing the corresponding bit in the PICSR SPR. |
|
Internally this amounts to the same thing (clearing the PICSPR |
bit), so a single function is provided, `clear_interrupt'. Note |
however that when level sensitive interrupts are configured, PICSR |
is read only, and can only be cleared by calling |
`clear_interrupt'. Using the two functions provided will ensure |
the peripheral works correctly whichever type of interrupt is used. |
|
Note: Until an interrupt is cleared, all subsequent |
interrupts are ignored with a warning. |
|
|
|
File: or1ksim.info, Node: Internal Debugging, Next: Regression Testing, Prev: Concepts, Up: Code Internals |
|
3697,6 → 3720,7
* channel (UART configuration): UART Configuration. (line 29) |
* clear breakpoint (Interactive CLI): Interactive Command Line. |
(line 57) |
* clear_interrupt: Concepts. (line 20) |
* clkcycle (simulator configuration): Simulator Behavior. (line 115) |
* cm (Interactive CLI): Interactive Command Line. |
(line 54) |
3986,6 → 4010,7
* internal debugging: Internal Debugging. (line 6) |
* interrupt controller configuration: Interrupt Configuration. |
(line 6) |
* interrupts: Concepts. (line 20) |
* irq (ATA/ATAPI configuration): Disc Interface Configuration. |
(line 36) |
* irq (DMA configuration): DMA Configuration. (line 34) |
4011,7 → 4036,7
(line 156) |
* log_enabled (verification API configuration): Verification API Configuration. |
(line 28) |
* long: Simulator Library. (line 95) |
* long: Simulator Library. (line 94) |
* make file for tests: Regression Testing. (line 27) |
* mc (memory configuration): Memory Configuration. |
(line 133) |
4056,6 → 4081,7
* mprofile (Interactive CLI): Interactive Command Line. |
(line 173) |
* mprofile (simulator configuration): Simulator Behavior. (line 29) |
* mtspr: Concepts. (line 20) |
* mwdma (ATA/ATAPI device configuration): Disc Interface Configuration. |
(line 132) |
* name (generic peripheral configuration): Generic Peripheral Configuration. |
4069,25 → 4095,25
* nways (cache configuration): Cache Configuration. (line 22) |
* nways (MMU configuration): Memory Management Configuration. |
(line 22) |
* or1ksim_get_time_period: Simulator Library. (line 85) |
* or1ksim_init: Simulator Library. (line 15) |
* or1ksim_interrupt: Simulator Library. (line 100) |
* or1ksim_interrupt_clear: Simulator Library. (line 118) |
* or1ksim_interrupt_set: Simulator Library. (line 109) |
* or1ksim_is_le: Simulator Library. (line 90) |
* or1ksim_jtag_reset: Simulator Library. (line 127) |
* or1ksim_jtag_shift_dr: Simulator Library. (line 149) |
* or1ksim_jtag_shift_ir: Simulator Library. (line 135) |
* or1ksim_read_mem: Simulator Library. (line 163) |
* or1ksim_read_reg: Simulator Library. (line 199) |
* or1ksim_get_time_period: Simulator Library. (line 84) |
* or1ksim_init: Simulator Library. (line 19) |
* or1ksim_interrupt: Simulator Library. (line 99) |
* or1ksim_interrupt_clear: Simulator Library. (line 121) |
* or1ksim_interrupt_set: Simulator Library. (line 110) |
* or1ksim_is_le: Simulator Library. (line 89) |
* or1ksim_jtag_reset: Simulator Library. (line 130) |
* or1ksim_jtag_shift_dr: Simulator Library. (line 152) |
* or1ksim_jtag_shift_ir: Simulator Library. (line 139) |
* or1ksim_read_mem: Simulator Library. (line 165) |
* or1ksim_read_reg: Simulator Library. (line 197) |
* or1ksim_read_spr: Simulator Library. (line 181) |
* or1ksim_reset_duration: Simulator Library. (line 70) |
* or1ksim_run: Simulator Library. (line 59) |
* or1ksim_set_stall_state: Simulator Library. (line 217) |
* or1ksim_set_time_point: Simulator Library. (line 81) |
* or1ksim_write_mem: Simulator Library. (line 172) |
* or1ksim_write_reg: Simulator Library. (line 208) |
* or1ksim_write_spr: Simulator Library. (line 190) |
* or1ksim_reset_duration: Simulator Library. (line 69) |
* or1ksim_run: Simulator Library. (line 58) |
* or1ksim_set_stall_state: Simulator Library. (line 212) |
* or1ksim_set_time_point: Simulator Library. (line 80) |
* or1ksim_write_mem: Simulator Library. (line 173) |
* or1ksim_write_reg: Simulator Library. (line 205) |
* or1ksim_write_spr: Simulator Library. (line 189) |
* output rediretion: Concepts. (line 7) |
* overflow flag setting by instructions: Configuring the Build. |
(line 133) |
4197,6 → 4223,7
(line 52) |
* Remote Serial Protocol, --srv: Standalone Simulator. |
(line 60) |
* report_interrupt: Concepts. (line 20) |
* reset (Interactive CLI): Interactive Command Line. |
(line 63) |
* reset hooks: Concepts. (line 13) |
4391,6 → 4418,8
* unstall the processor (Interactive CLI): Interactive Command Line. |
(line 78) |
* upr (CPU configuration): CPU Configuration. (line 21) |
* use_nmi (interrupt controller): Interrupt Configuration. |
(line 30) |
* ustates (cache configuration): Cache Configuration. (line 33) |
* ustates (MMU configuration): Memory Management Configuration. |
(line 41) |
4426,55 → 4455,56
|
|
Tag Table: |
Node: Top830 |
Node: Installation1240 |
Node: Preparation1487 |
Node: Configuring the Build1782 |
Node: Build and Install7926 |
Node: Known Issues8704 |
Node: Usage9759 |
Node: Standalone Simulator9973 |
Node: Profiling Utility14537 |
Node: Memory Profiling Utility15447 |
Node: Simulator Library16812 |
Node: Configuration26895 |
Node: Configuration File Format27507 |
Node: Configuration File Preprocessing27892 |
Node: Configuration File Syntax28189 |
Node: Simulator Configuration30974 |
Node: Simulator Behavior31265 |
Node: Verification API Configuration35846 |
Node: CUC Configuration37786 |
Node: Core OpenRISC Configuration39778 |
Node: CPU Configuration40280 |
Node: Memory Configuration44399 |
Node: Memory Management Configuration51121 |
Node: Cache Configuration53498 |
Node: Interrupt Configuration55884 |
Node: Power Management Configuration57446 |
Node: Branch Prediction Configuration58723 |
Node: Debug Interface Configuration60083 |
Node: Peripheral Configuration62426 |
Node: Memory Controller Configuration63052 |
Node: UART Configuration66832 |
Node: DMA Configuration70351 |
Node: Ethernet Configuration72218 |
Node: GPIO Configuration76300 |
Node: Display Interface Configuration77933 |
Node: Frame Buffer Configuration80242 |
Node: Keyboard Configuration82106 |
Node: Disc Interface Configuration84344 |
Node: Generic Peripheral Configuration89448 |
Node: Interactive Command Line91743 |
Node: Verification API98717 |
Node: Code Internals103147 |
Node: Coding Conventions103730 |
Node: Global Data Structures108157 |
Node: Concepts110814 |
Ref: Output Redirection110959 |
Node: Internal Debugging111498 |
Node: Regression Testing112022 |
Node: GNU Free Documentation License115811 |
Node: Index138218 |
Node: Top814 |
Node: Installation1224 |
Node: Preparation1471 |
Node: Configuring the Build1766 |
Node: Build and Install7910 |
Node: Known Issues8688 |
Node: Usage9743 |
Node: Standalone Simulator9957 |
Node: Profiling Utility14521 |
Node: Memory Profiling Utility15431 |
Node: Simulator Library16796 |
Node: Configuration27201 |
Node: Configuration File Format27813 |
Node: Configuration File Preprocessing28198 |
Node: Configuration File Syntax28495 |
Node: Simulator Configuration31280 |
Node: Simulator Behavior31571 |
Node: Verification API Configuration36152 |
Node: CUC Configuration38092 |
Node: Core OpenRISC Configuration40084 |
Node: CPU Configuration40586 |
Node: Memory Configuration44705 |
Node: Memory Management Configuration51427 |
Node: Cache Configuration53804 |
Node: Interrupt Configuration56190 |
Node: Power Management Configuration58023 |
Node: Branch Prediction Configuration59300 |
Node: Debug Interface Configuration60660 |
Node: Peripheral Configuration63003 |
Node: Memory Controller Configuration63629 |
Node: UART Configuration67409 |
Node: DMA Configuration70928 |
Node: Ethernet Configuration72795 |
Node: GPIO Configuration76877 |
Node: Display Interface Configuration78510 |
Node: Frame Buffer Configuration80819 |
Node: Keyboard Configuration82683 |
Node: Disc Interface Configuration84921 |
Node: Generic Peripheral Configuration90025 |
Node: Interactive Command Line92320 |
Node: Verification API99294 |
Node: Code Internals103724 |
Node: Coding Conventions104307 |
Node: Global Data Structures108734 |
Node: Concepts111391 |
Ref: Output Redirection111536 |
Ref: Interrupts Internal112074 |
Node: Internal Debugging113227 |
Node: Regression Testing113751 |
Node: GNU Free Documentation License117540 |
Node: Index139947 |
|
End Tag Table |
/doc/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/doc/or1ksim.texi
647,12 → 647,15
The header file @file{or1ksim.h} contains appropriate declarations of |
the functions exported by the @value{OR1KSIM} library. These are: |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_init (int @var{argc}, char *@var{argv}, void *@var{class_ptr}, |
int (*@var{upr})(void *@var{class_ptr}, unsigned long int @var{addr}, |
unsigned char @var{mask}[], unsigned char @var{rdata}[], int |
@var{data_len}), int (*@var{upw})(void *@var{class_ptr}, unsigned long |
int @var{addr}, unsigned char @var{mask}[], unsigned char @var{wdata}[], |
int @var{data_len})) |
@deftypefn {@file{or1ksim.h}} int or1ksim_init (int @var{argc}, @ |
char *@var{argv}, void *@var{class_ptr}, @ |
int (*@var{upr})(void *@var{class_ptr}, @ |
unsigned long int @var{addr}, unsigned char @var{mask}[], @ |
unsigned char @var{rdata}[], int @var{data_len}), @ |
int (*@var{upw})(void *@var{class_ptr}, @ |
unsigned long int @var{addr}, @ |
unsigned char @var{mask}[], unsigned char @var{wdata}[], @ |
int @var{data_len})) |
|
The initialization function is supplied with a vector of arguments, |
which are interpreted as arguments to the standalone version (see |
753,21 → 756,25
|
@deftypefn {@file{or1ksim.h}} void or1ksim_interrupt (int @var{i}) |
|
Generate an edge-triggered interrupt on interrupt line @var{i}. The interrupt |
is then immediately cleared automatically. A warning will be generated and the |
interrupt request ignored if level sensitive interrupts have been configured |
with the programmable interrupt controller (@pxref{Interrupt Configuration, , |
Interrupt Configuration}). |
Generate an edge-triggered interrupt on interrupt line @var{i}. The |
interrupt must be cleared separately by clearing the corresponding bit |
in the PICSR SPR. Until the interrupt is cleared, any further |
interrupts on the same line will be ignored with a warning. A warning |
will be generated and the interrupt request ignored if level sensitive |
interrupts have been configured with the programmable interrupt |
controller (@pxref{Interrupt Configuration, , Interrupt Configuration}). |
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} void or1ksim_interrupt_set (int @var{i}) |
|
Assert a level-triggered interrupt on interrupt line @var{i}. The interrupt |
must be cleared separately by an explicit call to |
@code{or1ksim_interrupt_clear}. A warning will be generated, and the interrupt |
request ignored if edge sensitive interrupts have been configured with the |
programmable interrupt controller (@pxref{Interrupt Configuration, , Interrupt |
Assert a level-triggered interrupt on interrupt line @var{i}. The |
interrupt must be cleared separately by an explicit call to |
@code{or1ksim_interrupt_clear}. Until the interrupt is cleared, any |
further setting of interrupts on the same line will be ignored with a |
warning. A warning will be generated, and the interrupt request ignored |
if edge sensitive interrupts have been configured with the programmable |
interrupt controller (@pxref{Interrupt Configuration, , Interrupt |
Configuration}). |
|
@end deftypefn |
791,8 → 798,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} double or1ksim_jtag_shift_ir (unsigned |
char *@var{jreg}, int @var{num_bits}) |
@deftypefn {@file{or1ksim.h}} double or1ksim_jtag_shift_ir @ |
(unsigned char *@var{jreg}, int @var{num_bits}) |
|
Shift the supplied register through the JTAG instruction register. |
Return the (model) time taken for this action. The register is supplied |
806,8 → 813,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} double or1ksim_jtag_shift_dr (unsigned |
char *@var{jreg}, int @var{num_bits}) |
@deftypefn {@file{or1ksim.h}} double or1ksim_jtag_shift_dr @ |
(unsigned char *@var{jreg}, int @var{num_bits}) |
|
Shift the supplied register through the JTAG data register. Return the |
(model) time taken for this action. The register is supplied as a byte |
821,8 → 828,9
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_read_mem (unsigned |
long int @var{addr}, unsigned char *@var{buf}, int @var{len}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_read_mem @ |
(unsigned long int @var{addr}, unsigned char *@var{buf}, @ |
int @var{len}) |
|
Read @var{len} bytes from @var{addr}, placing the result in @var{buf}. |
Return @var{len} on success and 0 on failure. |
833,8 → 841,9
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_write_mem (unsigned |
long int @var{addr}, const unsigned char *@var{buf}, int @var{len}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_write_mem @ |
(unsigned long int @var{addr}, const unsigned char *@var{buf}, @ |
int @var{len}) |
|
Write @var{len} bytes to @var{addr}, taking the data from @var{buf}. |
Return @var{len} on success and 0 on failure. |
845,8 → 854,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_read_spr (int @var{sprnum}, unsigned |
long int *@var{sprval_ptr}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_read_spr (int @var{sprnum}, @ |
unsigned long int *@var{sprval_ptr}) |
|
Read the SPR specified by @var{sprnum}, placing the result in |
@var{sprval_ptr}. Return non-zero on success and 0 on failure. |
857,8 → 866,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_write_spr (int @var{sprnum}, unsigned |
long int @var{sprva}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_write_spr (int @var{sprnum}, @ |
unsigned long int @var{sprva}) |
|
Write @var{sprval} to the SPR specified by @var{sprnum}. Return |
non-zero on success and 0 on failure. |
869,8 → 878,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_read_reg (int @var{regnum}, unsigned |
long int *@var{regval_ptr}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_read_reg (int @var{regnum}, @ |
unsigned long int *@var{regval_ptr}) |
|
Read the general purpose register specified by @var{regnum}, placing the |
result in @var{regval_ptr}. Return non-zero on success and 0 on |
882,8 → 891,8
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} int or1ksim_write_reg (int @var{regnum}, unsigned |
long int @var{regva}) |
@deftypefn {@file{or1ksim.h}} int or1ksim_write_reg (int @var{regnum}, @ |
unsigned long int @var{regva}) |
|
Write @var{regval} to the general purpose register specified by |
@var{regnum}. Return non-zero on success and 0 on failure. |
894,8 → 903,7
|
@end deftypefn |
|
@deftypefn {@file{or1ksim.h}} void or1ksim_set_stall_state (int |
@var{state}) |
@deftypefn {@file{or1ksim.h}} void or1ksim_set_stall_state (int @var{state}) |
|
Set the processor's state according to @var{state} (1 = stalled, 0 = not |
stalled). |
1893,15 → 1901,30
If 1 (true, the default), the programmable interrupt controller is |
edge triggered. If 0 (false), it is level triggered. |
|
@quotation Note |
When configured to be edge triggered, interrupts must be cleared in the PICSR by the processor writing a '0' to the appropriate bit. |
The library interface (@pxref{Simulator Library, , Simulator Library}) |
provides different functions for setting the different types of |
interrupt, and a function to clear level sensitive interrupts. Edge |
sensitive interrupts must be cleared by clearing the corresponding bit |
in the PICSR SPR. |
|
When configured to be level triggered, the interrupt must be cleared by lowering the peripheral's IRQ line. Writing '0' to the PICSR has no effect. |
Internal functions to set and clear interrupts are also provided for |
peripherals implemented within Or1ksim. @xref{Interrupts Internal, , |
Interrupts Internal} for more details. |
|
Peripherals can call the function @code{report_interrupt} to signal an interrupt request. When configured for level triggered interrupts, the function @code{clear_interrupt} will clear the appropriate bit in the PICSR. @code{clear_interrupt} has no effect when @value{OR1KSIM} is configured for edge triggered interrupts - interrupts must be cleared by the processor writing '0' to the appropriate bit in the PICSR in this case. |
@item use_nmi = 0|1 |
@cindex @code{use_nmi} (interrupt controller) |
If 1 (true, the default), interrupt lines 0 and 1 are non-maskable. In |
other words the least significant 2 bits of the PICMR SPR are hard-wired |
to 1. If 0 (false), all interrupt lines are treated as equivalent. |
|
@quotation Note |
These are not non-maskable in the true sense that they will pre-empt |
other interrupts. Rather they can never be masked out using the PICMR |
register. It is up the interrupt exception handler to give these |
interrupt lines priority, and indeed to decide on the priority order in |
general. |
@end quotation |
|
|
@end table |
|
@node Power Management Configuration |
3658,6 → 3681,37
function and pointer to a data structure as arguments. On reset that |
function will be called with the data stucture pointer as argument. |
|
@anchor{Interrupts Internal} |
@item Interrupts |
@cindex interrupts |
@findex report_interrupt |
@findex clear_interrupt |
@findex mtspr |
An internal peripheral can model the effect of an interrupt being |
asserted by calling @code{report_interrupt}. This is used for both edge |
and level sensitive interrupts. |
|
The effect is to set the corresponding bit in the PICSR SPR and to queue |
an interrupt exception to take place after the current instruction |
completes execution. |
|
Externally, the different interrupts require different mechanisms for |
clearing. Level sensitive interrupts should be cleared by deasserting |
the interrupt line, edge sensitive interrupts by clearing the |
corresponding bit in the PICSR SPR. |
|
Internally this amounts to the same thing (clearing the PICSPR bit), so |
a single function is provided, @code{clear_interrupt}. Note however that |
when level sensitive interrupts are configured, PICSR is read only, and |
can only be cleared by calling @code{clear_interrupt}. Using the two |
functions provided will ensure the peripheral works correctly whichever |
type of interrupt is used. |
|
@quotation Note |
Until an interrupt is cleared, all subsequent interrupts are ignored |
with a warning. |
@end quotation |
|
@end table |
|
@node Internal Debugging |
/doc/version.texi
1,4 → 1,4
@set UPDATED 22 November 2010 |
@set UPDATED 25 November 2010 |
@set UPDATED-MONTH November 2010 |
@set EDITION 2010-11-11 |
@set VERSION 2010-11-11 |
@set EDITION 2010-11-25 |
@set VERSION 2010-11-25 |
/cuc/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/pic/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/pic/pic.c
45,49 → 45,91
#include "sched.h" |
|
|
/* FIXME: This ugly hack will be removed once the bus architecture gets written |
*/ |
struct pic pic_state_int = { 1, 1 }; |
/* -------------------------------------------------------------------------- */ |
/* Reset the PIC. |
|
struct pic *pic_state = &pic_state_int; |
|
/* Reset. It initializes PIC registers. */ |
Sets registers to consistent values. */ |
/* -------------------------------------------------------------------------- */ |
void |
pic_reset (void) |
{ |
PRINTFQ ("Resetting PIC.\n"); |
cpu_state.sprs[SPR_PICMR] = 0; |
cpu_state.sprs[SPR_PICPR] = 0; |
cpu_state.sprs[SPR_PICSR] = 0; |
} |
cpu_state.sprs[SPR_PICMR] = config.pic.use_nmi ? 0x00000003 : 0x00000000; |
cpu_state.sprs[SPR_PICSR] = 0x00000000; |
|
/* Handles the reporting of an interrupt if it had to be delayed */ |
} /* pic_reset () */ |
|
|
/* -------------------------------------------------------------------------- */ |
/* Handle the reporting of an interrupt |
|
PIC interrupts are scheduled to take place after the current instruction |
has completed execution. |
|
@param[in] dat Data associated with the exception (not used) */ |
/* -------------------------------------------------------------------------- */ |
static void |
pic_rep_int (void *dat) |
{ |
/* printf ("Handling interrupt PICSR: 0x%08x\n", cpu_state.sprs[SPR_PICSR]); |
*/ |
|
if (cpu_state.sprs[SPR_PICSR]) |
{ |
except_handle (EXCEPT_INT, cpu_state.sprs[SPR_EEAR_BASE]); |
} |
} |
} /* pic_rep_int () */ |
|
/* Called whenever interrupts get enabled */ |
|
/* -------------------------------------------------------------------------- */ |
/* Enable interrupts. |
|
Called whenever interrupts get enabled, or when PICMR is written. |
|
@todo Not sure if calling whenever PICMR is written is a good |
idea. However, so long as interrupts are properly cleared, it should |
not be a problem. */ |
/* -------------------------------------------------------------------------- */ |
void |
pic_ints_en (void) |
{ |
if ((cpu_state.sprs[SPR_PICMR] & cpu_state.sprs[SPR_PICSR])) |
SCHED_ADD (pic_rep_int, NULL, 0); |
} |
{ |
SCHED_ADD (pic_rep_int, NULL, 0); |
} |
} /* pic_ints_en () */ |
|
/* Asserts interrupt to the PIC. */ |
/* WARNING: If this is called during a simulated instruction (ie. from a read/ |
* write mem callback), the interrupt will be delivered after the instruction |
* has finished executeing */ |
|
/* -------------------------------------------------------------------------- */ |
/*!Assert an interrupt to the PIC |
|
OpenRISC supports both edge and level triggered interrupt. The only |
difference is how the interrupt is cleared. For edge triggered, it is by |
clearing the corresponding bit in PICSR. For level triggered it is by |
deasserting the interrupt line. |
|
For integrated peripherals, these amount to the same thing (using |
clear_interrupt ()). For external peripherals, the library provides two |
distinct interfaces. |
|
An interrupt disables any power management activity. |
|
We warn if an interrupt is received on a line that already has an interrupt |
pending. |
|
@note If this is called during a simulated instruction (ie. from a read/ |
write mem callback), the interrupt will be delivered after the |
instruction has finished executing. |
|
@param[in] line The interrupt being asserted. */ |
/* -------------------------------------------------------------------------- */ |
void |
report_interrupt (int line) |
{ |
uint32_t lmask = 1 << line; |
|
/* printf ("Interrupt reported on line %d\n", line); */ |
|
/* Disable doze and sleep mode */ |
cpu_state.sprs[SPR_PMR] &= ~(SPR_PMR_DME | SPR_PMR_SME); |
|
99,31 → 141,47
return; |
} |
|
/* We can't take another interrupt if the previous one has not been |
cleared. */ |
if (cpu_state.sprs[SPR_PICSR] & lmask) |
{ |
/* Interrupt already signaled and pending */ |
fprintf (stderr, "Warning: Int line %d did not change state\n", line); |
PRINTF ("Warning: Int on line %d pending: ignored\n", line); |
return; |
} |
|
cpu_state.sprs[SPR_PICSR] |= lmask; |
|
if ((cpu_state.sprs[SPR_PICMR] & lmask) || line < 2) |
if (cpu_state.sprs[SPR_SR] & SPR_SR_IEE) |
/* If we are enabled in the mask, and interrupts are globally enabled in the |
SR, schedule the interrupt to take place after the next instruction. */ |
if ((cpu_state.sprs[SPR_PICMR] & lmask) && |
(cpu_state.sprs[SPR_SR] & SPR_SR_IEE)) |
{ |
/* printf ("Scheduling interrupt on line %d\n", line); */ |
SCHED_ADD (pic_rep_int, NULL, 0); |
} |
} |
} /* report_interrupt () */ |
|
/* Clears an int on a pic line */ |
|
/* -------------------------------------------------------------------------- */ |
/* Clear an interrupt on a PIC line. |
|
Logically this is different for a level sensitive interrupt (it lowers the |
input line) and an edge sensitive interrupt (it clears the PICSR bit). |
|
However within Or1ksim, these are implemented through the same operation - |
clearing the bit in PICSR. |
|
@param[in] line The interrupt being cleared. */ |
/* -------------------------------------------------------------------------- */ |
void |
clear_interrupt (int line) |
{ |
/* When level triggered, clear corresponding bit in PICSR */ |
if (!config.pic.edge_trigger) |
{ |
cpu_state.sprs[SPR_PICSR] &= ~(1 << line); |
} |
} |
cpu_state.sprs[SPR_PICSR] &= ~(1 << line); |
|
} /* clear_interrupt */ |
|
|
/*----------------------------------------------------[ PIC configuration ]---*/ |
|
|
169,6 → 227,21
|
|
/*---------------------------------------------------------------------------*/ |
/*!Enable or disable non-maskable interrupts |
|
@param[in] val The value to use |
@param[in] dat The config data structure (not used here) */ |
/*---------------------------------------------------------------------------*/ |
static void |
pic_use_nmi (union param_val val, |
void *dat) |
{ |
config.pic.use_nmi = val.int_val; |
|
} /* pic_use_nmi() */ |
|
|
/*---------------------------------------------------------------------------*/ |
/*!Initialize a new interrupt controller configuration |
|
ALL parameters are set explicitly to default values in init_defconfig() */ |
180,5 → 253,6
|
reg_config_param (sec, "enabled", PARAMT_INT, pic_enabled); |
reg_config_param (sec, "edge_trigger", PARAMT_INT, pic_edge_trigger); |
reg_config_param (sec, "use_nmi", PARAMT_INT, pic_use_nmi); |
|
} /* reg_pic_sec() */ |
/NEWS
11,6 → 11,10
New option --trace provides a one line dump of instruction executed and any |
register or memory location changed after each instruction. |
|
A new configuration option "use_nmi" is added to the programmable interrupt |
controller (PIC). This causes interrupt lines 0 and 1 to be non-maskable, but |
only in the sense that the corresponding bits in PICMR are hard-wired to 1. |
|
New config setting for memory initialization "exitnops" fills memory with |
"l.nop 1", which will cause the simulator to exit. Good for tracking pointer |
corruption. |
/pm/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/ChangeLog
1,19 → 1,52
2010-11-25 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* configure: Regenerated. |
* configure.ac: Updated version. |
* cpu/or1k/sprs.c (mtspr): Setting PICMR considers NMI usage. |
* doc/or1ksim.texi <Interrupt Configuration>: Documented the PIC |
use_nmi config. |
* libtoplevel.c (or1ksim_interrupt): Does not clear interrupts |
immediately. |
* NEWS: Updated regarding PIC configuration. |
* pic/pic.c (pic_reset): Reference to PICPR |
removed. Initialization considers NMI use. |
(report_interrupt): NMI now handled through PICMR, rather than |
directly in the code. |
(pic_use_nmi): Created. |
(pic_reg_sec): Added "use_nmi" option. |
* sim-config.c (init_defconfig): config.pic.use_nmi initialized. |
* sim-config.h <config.pic>: New entry use_nmi added. |
|
2010-11-24 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* configure: Regenerated. |
* configure.ac: Updated version. |
* doc/or1ksim.texi: More clarification of interrupt behavior when |
edge or level triggered. |
* pic/pic.c (report_interrupt): Improved warning when interrupt is |
reported while previous one is pending. |
(clear_interrupt): Now works for both level and edge triggered |
interrupts. |
|
2010-11-22 Julius Baxter <julius@opencores.org> |
|
* cpu/common/execute.h <cpu_state>: removed pic_lines variable. |
* cpu/or1k/sprs.c: Added comment clarifying PICSR behavior. |
* pic/pic.c: Removed use of pic_lines variable, added commenting |
* pic/pic.c: Removed use of pic_lines variable, added commenting |
clarifying behavior. |
<clear_interrupt>: only clear PICSR when level triggered. |
* doc/or1ksim.texi (Interrupt Configuration): Added clarification of |
* doc/or1ksim.texi (Interrupt Configuration): Added clarification of |
interrupt behavior when edge or level triggered. |
|
2010-11-22 Julius Baxter <julius@opencores.org> |
|
* peripheral/eth.c (eth_miim_trans): comment out debug printf()s |
* cpu/or32/generate.c (generate_body): Add except_handle call to all |
* cpu/or32/generate.c (generate_body): Add except_handle call to all |
generated illegal instruction cases. |
|
2010-11-19 Julius Baxter <julius@opencores.org> |
* peripheral/eth.c: Added new variable phy_addr to device struct and |
|
* peripheral/eth.c: Added new variable phy_addr to device struct and |
ability to set it in config script section. <eth_miim_trans>: function |
to emulate MIIM transactions, mainly PHYID regs at the moment. |
* peripheral/eth.h: Added MIIM bus defines. |
/testsuite/libsim.tests/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/libsim.tests/int-edge.exp
27,104 → 27,146
# Run the library edge triggered interrupts in a number of ways. |
|
# Sequence of independent interrupts |
run_libsim "int-edge simple 1" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 3" \ |
"PICSR 0x00000008 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "2" "2" "3" |
run_libsim "int-edge simple 1" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 3" \ |
"PICSR = 0x00000008" \ |
"Clearing interrupt 3" \ |
"Cleared PICSR is 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "2" "2" "3" |
|
run_libsim "int-edge simple 2" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 7" \ |
"PICSR 0x00000080 -> 0x00000000" \ |
"Triggering interrupt 17" \ |
"PICSR 0x00020000 -> 0x00000000" \ |
"Triggering interrupt 31" \ |
"PICSR 0x80000000 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "2" "7" "17" "31" |
run_libsim "int-edge simple 2" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 7" \ |
"PICSR = 0x00000080" \ |
"Clearing interrupt 7" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 17" \ |
"PICSR = 0x00020000" \ |
"Clearing interrupt 17" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Cleared PICSR is 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "2" "7" "17" "31" |
|
# Duplicated interrupts |
run_libsim "int-edge duplicated 1" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 4" \ |
"PICSR 0x00000010 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "2" "2" "4" "2" |
run_libsim "int-edge duplicated 1" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 4" \ |
"PICSR = 0x00000010" \ |
"Clearing interrupt 4" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "2" "2" "4" "2" |
|
run_libsim "int-edge duplicated 2" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR 0x00000004 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "2" "2" "2" "2" "2" "2" "2" "2" "2" |
run_libsim "int-edge duplicated 2" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 2" \ |
"PICSR = 0x00000004" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "2" "2" "2" "2" "2" "2" "2" "2" "2" |
|
# All from upcalls |
run_libsim "int-edge all upcall" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 7" \ |
"PICSR 0x00000080 -> 0x00000000" \ |
"Triggering interrupt 17" \ |
"PICSR 0x00020000 -> 0x00000000" \ |
"Triggering interrupt 31" \ |
"PICSR 0x80000000 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "20" "7" "17" "31" |
run_libsim "int-edge all upcall" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 20" \ |
"PICSR = 0x00100000" \ |
"Clearing interrupt 2" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 7" \ |
"PICSR = 0x00000080" \ |
"Clearing interrupt 7" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 17" \ |
"PICSR = 0x00020000" \ |
"Clearing interrupt 17" \ |
"Cleared PICSR is 0x00000000" \ |
"Triggering interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Cleared PICSR is 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "20" "7" "17" "31" |
|
# Check the boundaries of acceptable interrupt numbers |
run_libsim "int-edge check boundaries" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Triggering interrupt 0" \ |
"PICSR 0x00000001 -> 0x00000000" \ |
"Triggering interrupt 1" \ |
"PICSR 0x00000002 -> 0x00000000" \ |
"Triggering interrupt 31" \ |
"PICSR 0x80000000 -> 0x00000000" \ |
"Warning: Invalid interrupt # 32 - ignored" \ |
"Triggering interrupt 31" \ |
"PICSR 0x80000000 -> 0x00000000" \ |
"Triggering interrupt 1" \ |
"PICSR 0x00000002 -> 0x00000000" \ |
"Triggering interrupt 0" \ |
"PICSR 0x00000001 -> 0x00000000" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-edge" "int-edge.cfg" \ |
"int-logger/int-logger-edge" "10" "0" "1" "31" "32" "31" "1" "0" |
run_libsim "int-edge check boundaries" \ |
[list "Warning: Invalid interrupt # 0 to raise: Exiting."] \ |
"lib-inttest/lib-inttest" "int-edge.cfg" \ |
"int-logger/int-logger" "-e" "10" "0" "1" "31" "32" "31" "1" "0" |
/testsuite/libsim.tests/int-level.exp
31,83 → 31,32
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Raising interrupt 1" \ |
"Triggering interrupt 1" \ |
"PICSR = 0x00000002" \ |
"Clearing interrupt 1" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-level" "int-level.cfg" \ |
"int-logger/int-logger-level" "+1" "-1" |
"lib-inttest/lib-inttest" "int-level.cfg" \ |
"int-logger/int-logger" "-l" "1" |
|
run_libsim "int-level simple 2" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Raising interrupt 7" \ |
"Triggering interrupt 7" \ |
"PICSR = 0x00000080" \ |
"Clearing interrupt 7" \ |
"Raising interrupt 17" \ |
"Triggering interrupt 17" \ |
"PICSR = 0x00020000" \ |
"Clearing interrupt 17" \ |
"Raising interrupt 31" \ |
"Triggering interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-level" "int-level.cfg" \ |
"int-logger/int-logger-level" "+7" "-7" "+17" "-17" "+31" "-31" |
"lib-inttest/lib-inttest" "int-level.cfg" \ |
"int-logger/int-logger" "-l" "7" "17" "31" |
|
# Uncleared interrupt (this only matches the first two reports or PICSR, there |
# are many) |
run_libsim "int-level uncleared interrupt" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Raising interrupt 1" \ |
"PICSR = 0x00000002" \ |
"PICSR = 0x00000002" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-level" "int-level.cfg" \ |
"int-logger/int-logger-level" "+1" |
|
# Clearing the wrong interrupt |
run_libsim "int-level wrong clear" \ |
[list "Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Raising interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 1" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-level" "int-level.cfg" \ |
"int-logger/int-logger-level" "+31" "-1" "-31" |
|
# Check the boundaries of acceptable interrupt numbers |
run_libsim "int-level check boundaries" \ |
[list "Warning: Invalid interrupt # 32 to raise." \ |
"Warning: Invalid interrupt # 32 to clear." \ |
"Initalization succeeded." \ |
"Starting interrupt handler" \ |
"Enabling interrupts." \ |
"Raising interrupt 0" \ |
"PICSR = 0x00000001" \ |
"Clearing interrupt 0" \ |
"Raising interrupt 1" \ |
"PICSR = 0x00000002" \ |
"Clearing interrupt 1" \ |
"Raising interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Raising interrupt 31" \ |
"PICSR = 0x80000000" \ |
"Clearing interrupt 31" \ |
"Raising interrupt 1" \ |
"PICSR = 0x00000002" \ |
"Clearing interrupt 1" \ |
"Raising interrupt 0" \ |
"PICSR = 0x00000001" \ |
"Clearing interrupt 0" \ |
"Test completed successfully."] \ |
"lib-inttest/lib-inttest-level" "int-level.cfg" \ |
"int-logger/int-logger-level" "+0" "-0" "+1" "-1" "+31" "-31" "+32" "-32" \ |
"+31" "-31" "+1" "-1" "+0" "-0" |
[list "Warning: Invalid interrupt # 0 to raise: Exiting."] \ |
"lib-inttest/lib-inttest" "int-level.cfg" \ |
"int-logger/int-logger" "-l" "0" "1" "31" "32" "31" "1" "0" |
/testsuite/test-code-or1k/eth/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/configure
1,13 → 1,15
#! /bin/sh |
# Guess values for system-dependent variables and create Makefiles. |
# Generated by GNU Autoconf 2.64 for or1ksim-testsuite 2010-11-11. |
# Generated by GNU Autoconf 2.65 for or1ksim-testsuite 2010-11-25. |
# |
# Report bugs to <openrisc@opencores.org>. |
# |
# |
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, |
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software |
# Foundation, Inc. |
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, |
# Inc. |
# |
# |
# This configure script is free software; the Free Software Foundation |
# gives unlimited permission to copy, distribute and modify it. |
## -------------------- ## |
676,7 → 678,8
|
|
|
exec 7<&0 </dev/null 6>&1 |
test -n "$DJDIR" || exec 7<&0 </dev/null |
exec 6>&1 |
|
# Name of the host. |
# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, |
698,8 → 701,8
# Identity of this package. |
PACKAGE_NAME='or1ksim-testsuite' |
PACKAGE_TARNAME='or1ksim-testsuite' |
PACKAGE_VERSION='2010-11-11' |
PACKAGE_STRING='or1ksim-testsuite 2010-11-11' |
PACKAGE_VERSION='2010-11-25' |
PACKAGE_STRING='or1ksim-testsuite 2010-11-25' |
PACKAGE_BUGREPORT='openrisc@opencores.org' |
PACKAGE_URL='' |
|
1421,7 → 1424,7
# Omit some internal or obsolete options to make the list less imposing. |
# This message is too long to be a string in the A/UX 3.1 sh. |
cat <<_ACEOF |
\`configure' configures or1ksim-testsuite 2010-11-11 to adapt to many kinds of systems. |
\`configure' configures or1ksim-testsuite 2010-11-25 to adapt to many kinds of systems. |
|
Usage: $0 [OPTION]... [VAR=VALUE]... |
|
1492,7 → 1495,7
|
if test -n "$ac_init_help"; then |
case $ac_init_help in |
short | recursive ) echo "Configuration of or1ksim-testsuite 2010-11-11:";; |
short | recursive ) echo "Configuration of or1ksim-testsuite 2010-11-25:";; |
esac |
cat <<\_ACEOF |
|
1525,7 → 1528,7
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a |
nonstandard directory <lib dir> |
LIBS libraries to pass to the linker, e.g. -l<library> |
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if |
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if |
you have headers in a nonstandard directory <include dir> |
CPP C preprocessor |
CCAS assembler compiler command (defaults to CC) |
1597,8 → 1600,8
test -n "$ac_init_help" && exit $ac_status |
if $ac_init_version; then |
cat <<\_ACEOF |
or1ksim-testsuite configure 2010-11-11 |
generated by GNU Autoconf 2.64 |
or1ksim-testsuite configure 2010-11-25 |
generated by GNU Autoconf 2.65 |
|
Copyright (C) 2009 Free Software Foundation, Inc. |
This configure script is free software; the Free Software Foundation |
1645,7 → 1648,7
ac_retval=1 |
fi |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_compile |
|
1691,7 → 1694,7
# left behind by Apple's compiler. We do this before executing the actions. |
rm -rf conftest.dSYM conftest_ipa8_conftest.oo |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_link |
|
1759,7 → 1762,7
ac_retval=1 |
fi |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_cpp |
|
1801,7 → 1804,7
fi |
rm -rf conftest.dSYM conftest_ipa8_conftest.oo |
eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} |
return $ac_retval |
as_fn_set_status $ac_retval |
|
} # ac_fn_c_try_run |
|
2022,8 → 2025,8
This file contains any messages produced by compilers while |
running configure, to aid debugging if configure makes a mistake. |
|
It was created by or1ksim-testsuite $as_me 2010-11-11, which was |
generated by GNU Autoconf 2.64. Invocation command line was |
It was created by or1ksim-testsuite $as_me 2010-11-25, which was |
generated by GNU Autoconf 2.65. Invocation command line was |
|
$ $0 $@ |
|
2276,7 → 2279,7
for ac_site_file in "$ac_site_file1" "$ac_site_file2" |
do |
test "x$ac_site_file" = xNONE && continue |
if test -r "$ac_site_file"; then |
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then |
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 |
$as_echo "$as_me: loading site script $ac_site_file" >&6;} |
sed 's/^/| /' "$ac_site_file" >&5 |
2285,9 → 2288,9
done |
|
if test -r "$cache_file"; then |
# Some versions of bash will fail to source /dev/null (special |
# files actually), so we avoid doing that. |
if test -f "$cache_file"; then |
# Some versions of bash will fail to source /dev/null (special files |
# actually), so we avoid doing that. DJGPP emulates it as a regular file. |
if test /dev/null != "$cache_file" && test -f "$cache_file"; then |
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 |
$as_echo "$as_me: loading cache $cache_file" >&6;} |
case $cache_file in |
2812,8 → 2815,8
... rest of stderr output deleted ... |
10q' conftest.err >conftest.er1 |
cat conftest.er1 >&5 |
rm -f conftest.er1 conftest.err |
fi |
rm -f conftest.er1 conftest.err |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; } |
done |
2820,12 → 2823,10
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
/* end confdefs.h. */ |
#include <stdio.h> |
|
int |
main () |
{ |
FILE *f = fopen ("conftest.out", "w"); |
return ferror (f) || fclose (f) != 0; |
|
; |
return 0; |
2832,12 → 2833,12
} |
_ACEOF |
ac_clean_files_save=$ac_clean_files |
ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out" |
ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" |
# Try to create an executable without -o first, disregard a.out. |
# It will help us diagnose broken compilers, and finding out an intuition |
# of exeext. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 |
$as_echo_n "checking for C compiler default output file name... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 |
$as_echo_n "checking whether the C compiler works... " >&6; } |
ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` |
|
# The possible output files: |
2899,10 → 2900,10
else |
ac_file='' |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 |
$as_echo "$ac_file" >&6; } |
if test -z "$ac_file"; then : |
$as_echo "$as_me: failed program was:" >&5 |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
$as_echo "no" >&6; } |
$as_echo "$as_me: failed program was:" >&5 |
sed 's/^/| /' conftest.$ac_ext >&5 |
|
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
2910,51 → 2911,18
{ as_fn_set_status 77 |
as_fn_error "C compiler cannot create executables |
See \`config.log' for more details." "$LINENO" 5; }; } |
else |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
$as_echo "yes" >&6; } |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 |
$as_echo_n "checking for C compiler default output file name... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 |
$as_echo "$ac_file" >&6; } |
ac_exeext=$ac_cv_exeext |
|
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 |
$as_echo_n "checking whether the C compiler works... " >&6; } |
# If not cross compiling, check that we can run a simple program. |
if test "$cross_compiling" != yes; then |
if { ac_try='./$ac_file' |
{ { case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_try") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; }; }; then |
cross_compiling=no |
else |
if test "$cross_compiling" = maybe; then |
cross_compiling=yes |
else |
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
as_fn_error "cannot run C compiled programs. |
If you meant to cross compile, use \`--host'. |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
fi |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
$as_echo "yes" >&6; } |
|
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out |
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out |
ac_clean_files=$ac_clean_files_save |
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 |
$as_echo_n "checking whether we are cross compiling... " >&6; } |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 |
$as_echo "$cross_compiling" >&6; } |
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 |
$as_echo_n "checking for suffix of executables... " >&6; } |
if { { ac_try="$ac_link" |
2987,7 → 2955,7
as_fn_error "cannot compute suffix of executables: cannot compile and link |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
rm -f conftest$ac_cv_exeext |
rm -f conftest conftest$ac_cv_exeext |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 |
$as_echo "$ac_cv_exeext" >&6; } |
|
2994,6 → 2962,65
rm -f conftest.$ac_ext |
EXEEXT=$ac_cv_exeext |
ac_exeext=$EXEEXT |
cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
/* end confdefs.h. */ |
#include <stdio.h> |
int |
main () |
{ |
FILE *f = fopen ("conftest.out", "w"); |
return ferror (f) || fclose (f) != 0; |
|
; |
return 0; |
} |
_ACEOF |
ac_clean_files="$ac_clean_files conftest.out" |
# Check that the compiler produces executables we can run. If not, either |
# the compiler is broken, or we cross compile. |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 |
$as_echo_n "checking whether we are cross compiling... " >&6; } |
if test "$cross_compiling" != yes; then |
{ { ac_try="$ac_link" |
case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_link") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; } |
if { ac_try='./conftest$ac_cv_exeext' |
{ { case "(($ac_try" in |
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; |
*) ac_try_echo=$ac_try;; |
esac |
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" |
$as_echo "$ac_try_echo"; } >&5 |
(eval "$ac_try") 2>&5 |
ac_status=$? |
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
test $ac_status = 0; }; }; then |
cross_compiling=no |
else |
if test "$cross_compiling" = maybe; then |
cross_compiling=yes |
else |
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
as_fn_error "cannot run C compiled programs. |
If you meant to cross compile, use \`--host'. |
See \`config.log' for more details." "$LINENO" 5; } |
fi |
fi |
fi |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 |
$as_echo "$cross_compiling" >&6; } |
|
rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out |
ac_clean_files=$ac_clean_files_save |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 |
$as_echo_n "checking for suffix of object files... " >&6; } |
if test "${ac_cv_objext+set}" = set; then : |
3841,13 → 3868,13
else |
lt_cv_nm_interface="BSD nm" |
echo "int some_variable = 0;" > conftest.$ac_ext |
(eval echo "\"\$as_me:3844: $ac_compile\"" >&5) |
(eval echo "\"\$as_me:3871: $ac_compile\"" >&5) |
(eval "$ac_compile" 2>conftest.err) |
cat conftest.err >&5 |
(eval echo "\"\$as_me:3847: $NM \\\"conftest.$ac_objext\\\"\"" >&5) |
(eval echo "\"\$as_me:3874: $NM \\\"conftest.$ac_objext\\\"\"" >&5) |
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) |
cat conftest.err >&5 |
(eval echo "\"\$as_me:3850: output\"" >&5) |
(eval echo "\"\$as_me:3877: output\"" >&5) |
cat conftest.out >&5 |
if $GREP 'External.*some_variable' conftest.out > /dev/null; then |
lt_cv_nm_interface="MS dumpbin" |
5053,7 → 5080,7
;; |
*-*-irix6*) |
# Find out which ABI we are using. |
echo '#line 5056 "configure"' > conftest.$ac_ext |
echo '#line 5083 "configure"' > conftest.$ac_ext |
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 |
(eval $ac_compile) 2>&5 |
ac_status=$? |
6583,11 → 6610,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:6586: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:6613: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>conftest.err) |
ac_status=$? |
cat conftest.err >&5 |
echo "$as_me:6590: \$? = $ac_status" >&5 |
echo "$as_me:6617: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s "$ac_outfile"; then |
# The compiler can only warn and ignore the option if not recognized |
# So say no if there are warnings other than the usual output. |
6922,11 → 6949,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:6925: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:6952: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>conftest.err) |
ac_status=$? |
cat conftest.err >&5 |
echo "$as_me:6929: \$? = $ac_status" >&5 |
echo "$as_me:6956: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s "$ac_outfile"; then |
# The compiler can only warn and ignore the option if not recognized |
# So say no if there are warnings other than the usual output. |
7027,11 → 7054,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:7030: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7057: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>out/conftest.err) |
ac_status=$? |
cat out/conftest.err >&5 |
echo "$as_me:7034: \$? = $ac_status" >&5 |
echo "$as_me:7061: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s out/conftest2.$ac_objext |
then |
# The compiler can only warn and ignore the option if not recognized |
7082,11 → 7109,11
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
-e 's:$: $lt_compiler_flag:'` |
(eval echo "\"\$as_me:7085: $lt_compile\"" >&5) |
(eval echo "\"\$as_me:7112: $lt_compile\"" >&5) |
(eval "$lt_compile" 2>out/conftest.err) |
ac_status=$? |
cat out/conftest.err >&5 |
echo "$as_me:7089: \$? = $ac_status" >&5 |
echo "$as_me:7116: \$? = $ac_status" >&5 |
if (exit $ac_status) && test -s out/conftest2.$ac_objext |
then |
# The compiler can only warn and ignore the option if not recognized |
9465,7 → 9492,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
lt_status=$lt_dlunknown |
cat > conftest.$ac_ext <<_LT_EOF |
#line 9468 "configure" |
#line 9495 "configure" |
#include "confdefs.h" |
|
#if HAVE_DLFCN_H |
9561,7 → 9588,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
lt_status=$lt_dlunknown |
cat > conftest.$ac_ext <<_LT_EOF |
#line 9564 "configure" |
#line 9591 "configure" |
#include "confdefs.h" |
|
#if HAVE_DLFCN_H |
10102,6 → 10129,7
|
fi |
|
test -d ./--version && rmdir ./--version |
if test "${ac_cv_path_mkdir+set}" = set; then |
MKDIR_P="$ac_cv_path_mkdir -p" |
else |
10109,7 → 10137,6
# value for MKDIR_P within a source directory, because that will |
# break other packages using the cache if that directory is |
# removed, or if the value is a relative name. |
test -d ./--version && rmdir ./--version |
MKDIR_P="$ac_install_sh -d" |
fi |
fi |
10288,7 → 10315,7
|
# Define the identity of the package. |
PACKAGE='or1ksim-testsuite' |
VERSION='2010-11-11' |
VERSION='2010-11-25' |
|
|
cat >>confdefs.h <<_ACEOF |
11715,8 → 11742,8
# report actual input values of CONFIG_FILES etc. instead of their |
# values after options handling. |
ac_log=" |
This file was extended by or1ksim-testsuite $as_me 2010-11-11, which was |
generated by GNU Autoconf 2.64. Invocation command line was |
This file was extended by or1ksim-testsuite $as_me 2010-11-25, which was |
generated by GNU Autoconf 2.65. Invocation command line was |
|
CONFIG_FILES = $CONFIG_FILES |
CONFIG_HEADERS = $CONFIG_HEADERS |
11756,6 → 11783,7
|
-h, --help print this help, then exit |
-V, --version print version number and configuration settings, then exit |
--config print configuration, then exit |
-q, --quiet, --silent |
do not print progress messages |
-d, --debug don't remove temporary files |
11778,10 → 11806,11
|
_ACEOF |
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
ac_cs_version="\\ |
or1ksim-testsuite config.status 2010-11-11 |
configured by $0, generated by GNU Autoconf 2.64, |
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" |
or1ksim-testsuite config.status 2010-11-25 |
configured by $0, generated by GNU Autoconf 2.65, |
with options \\"\$ac_cs_config\\" |
|
Copyright (C) 2009 Free Software Foundation, Inc. |
This config.status script is free software; the Free Software Foundation |
11819,6 → 11848,8
ac_cs_recheck=: ;; |
--version | --versio | --versi | --vers | --ver | --ve | --v | -V ) |
$as_echo "$ac_cs_version"; exit ;; |
--config | --confi | --conf | --con | --co | --c ) |
$as_echo "$ac_cs_config"; exit ;; |
--debug | --debu | --deb | --de | --d | -d ) |
debug=: ;; |
--file | --fil | --fi | --f ) |
12299,7 → 12330,7
t delim |
:nl |
h |
s/\(.\{148\}\).*/\1/ |
s/\(.\{148\}\)..*/\1/ |
t more1 |
s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ |
p |
12313,7 → 12344,7
t nl |
:delim |
h |
s/\(.\{148\}\).*/\1/ |
s/\(.\{148\}\)..*/\1/ |
t more2 |
s/["\\]/\\&/g; s/^/"/; s/$/"/ |
p |
/testsuite/test-code-or1k/basic/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
370,7 → 370,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
395,7 → 395,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
559,7 → 559,8
fi; \ |
done |
-test -n "$(am__skip_mode_fix)" \ |
|| find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ |
|| find "$(distdir)" -type d ! -perm -755 \ |
-exec chmod u+rwx,go+rx {} \; -o \ |
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ |
! -type d ! -perm -400 -exec chmod a+r {} \; -o \ |
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ |
603,17 → 604,17
distcheck: dist |
case '$(DIST_ARCHIVES)' in \ |
*.tar.gz*) \ |
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ |
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ |
*.tar.bz2*) \ |
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ |
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ |
*.tar.lzma*) \ |
unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ |
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ |
*.tar.xz*) \ |
xz -dc $(distdir).tar.xz | $(am__untar) ;;\ |
*.tar.Z*) \ |
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ |
*.shar.gz*) \ |
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ |
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ |
*.zip*) \ |
unzip $(distdir).zip ;;\ |
esac |
/testsuite/test-code-or1k/cbasic/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mc-common/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/except/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/tick/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/functest/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mem-test/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/ext/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/kbdtest/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mycompress/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/upcalls/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/cache/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/configure.ac
24,7 → 24,7
# directory. This uses a different tool chain, so has its own configuration |
# script. Process this file with autoconf to produce a configure script. |
|
AC_INIT([or1ksim-testsuite], [2010-11-11], [openrisc@opencores.org]) |
AC_INIT([or1ksim-testsuite], [2010-11-25], [openrisc@opencores.org]) |
AC_CONFIG_MACRO_DIR([m4]) |
|
AC_PROG_LIBTOOL |
/testsuite/test-code-or1k/testfloat/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/fp/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
testsuite/test-code-or1k/int-logger/int-logger-level.c
Property changes :
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Id
\ No newline at end of property
Index: testsuite/test-code-or1k/int-logger/int-logger-edge.c
===================================================================
--- testsuite/test-code-or1k/int-logger/int-logger-edge.c (revision 430)
+++ testsuite/test-code-or1k/int-logger/int-logger-edge.c (nonexistent)
@@ -1,132 +0,0 @@
-/* int-logger-edge.c. Test of Or1ksim handling of edge triggered interrupts
-
- Copyright (C) 2010 Embecosm Limited
-
- Contributors various OpenCores participants
- Contributor Jeremy Bennett
-
- This file is part of OpenRISC 1000 Architectural Simulator.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the Free
- Software Foundation; either version 3 of the License, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.
-
- You should have received a copy of the GNU General Public License along
- with this program. If not, see . */
-
-/* ----------------------------------------------------------------------------
- This code is commented throughout for use with Doxygen.
- --------------------------------------------------------------------------*/
-
-#include "support.h"
-#include "spr-defs.h"
-#include "board.h"
-
-
-/* --------------------------------------------------------------------------*/
-/*!Write a memory mapped register
-
- @param[in] addr Memory mapped address
- @param[in] value Value to set */
-/* --------------------------------------------------------------------------*/
-static void
-setreg (unsigned long addr,
- unsigned char value)
-{
- *((volatile unsigned char *) addr) = value;
-
-} /* setreg () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Read a memory mapped register
-
- @param[in] addr Memory mapped address
-
- @return Value read */
-/* --------------------------------------------------------------------------*/
-unsigned long
-getreg (unsigned long addr)
-{
- return *((volatile unsigned char *) addr);
-
-} /* getreg () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Generic interrupt handler
-
- This should receive the interrupt exception. Report the value in PICSR,
- then clear the interrupt and reporting it again */
-/* --------------------------------------------------------------------------*/
-static void
-interrupt_handler ()
-{
- unsigned long int old_picsr = mfspr (SPR_PICSR);
- mtspr (SPR_PICSR, 0);
- unsigned long int new_picsr = mfspr (SPR_PICSR);
-
- printf ("PICSR 0x%08lx -> 0x%08lx\n", old_picsr, new_picsr);
-
-} /* interrupt_handler () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Main program to set up interrupt handler
-
- We make a series of upcalls, after 500 us and then every 1000us, which
- prompt some interrupts. By doing this, our upcalls should always be well
- clear of any calling function interrupt generation, which is on millisecond
- boundaries.
-
- @return The return code from the program (always zero). */
-/* --------------------------------------------------------------------------*/
-int
-main ()
-{
- printf ("Starting interrupt handler\n");
- excpt_int = (unsigned long)interrupt_handler;
-
- /* Enable interrupts */
- printf ("Enabling interrupts.\n");
- mtspr (SPR_SR, mfspr(SPR_SR) | SPR_SR_IEE);
- mtspr (SPR_PICMR, 0xffffffff);
-
- /* Loop forever, upcalling at the desired intervals. */
- unsigned long int start = read_timer ();
-
- while (1)
- {
- static int do_read_p = 1;
- static long int end_time = 500;
-
- while ((read_timer () - start) < end_time)
- {
- }
-
- /* Do our memory mapped upcall, alternating reads and writes. */
- if (do_read_p)
- {
- (void)getreg (GENERIC_BASE);
- do_read_p = 0;
- }
- else
- {
- setreg (GENERIC_BASE, 0);
- do_read_p = 1;
- }
-
- /* Wait 1000us before next upcall. */
- end_time += 1000;
- }
-
- /* We don't actually ever return */
- return 0;
-
-} /* main () */
testsuite/test-code-or1k/int-logger/int-logger-edge.c
Property changes :
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Id
\ No newline at end of property
Index: testsuite/test-code-or1k/int-logger/Makefile.in
===================================================================
--- testsuite/test-code-or1k/int-logger/Makefile.in (revision 430)
+++ testsuite/test-code-or1k/int-logger/Makefile.in (revision 432)
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.11 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
@@ -58,7 +58,7 @@
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-check_PROGRAMS = int-logger-edge$(EXEEXT) int-logger-level$(EXEEXT)
+check_PROGRAMS = int-logger$(EXEEXT)
subdir = int-logger
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -72,20 +72,12 @@
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
-am_int_logger_edge_OBJECTS = int-logger-edge.$(OBJEXT)
-int_logger_edge_OBJECTS = $(am_int_logger_edge_OBJECTS)
-int_logger_edge_DEPENDENCIES = ../except/except.lo \
- ../support/libsupport.la
-int_logger_edge_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+am_int_logger_OBJECTS = int-logger.$(OBJEXT)
+int_logger_OBJECTS = $(am_int_logger_OBJECTS)
+int_logger_DEPENDENCIES = ../except/except.lo ../support/libsupport.la
+int_logger_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(int_logger_edge_LDFLAGS) $(LDFLAGS) -o $@
-am_int_logger_level_OBJECTS = int-logger-level.$(OBJEXT)
-int_logger_level_OBJECTS = $(am_int_logger_level_OBJECTS)
-int_logger_level_DEPENDENCIES = ../except/except.lo \
- ../support/libsupport.la
-int_logger_level_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(int_logger_level_LDFLAGS) $(LDFLAGS) -o $@
+ $(int_logger_LDFLAGS) $(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/../../depcomp
am__depfiles_maybe = depfiles
@@ -99,8 +91,8 @@
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
-SOURCES = $(int_logger_edge_SOURCES) $(int_logger_level_SOURCES)
-DIST_SOURCES = $(int_logger_edge_SOURCES) $(int_logger_level_SOURCES)
+SOURCES = $(int_logger_SOURCES)
+DIST_SOURCES = $(int_logger_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -219,16 +211,11 @@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-int_logger_edge_SOURCES = int-logger-edge.c
-int_logger_edge_LDFLAGS = -T$(srcdir)/../default.ld
-int_logger_edge_LDADD = ../except/except.lo \
- ../support/libsupport.la
+int_logger_SOURCES = int-logger.c
+int_logger_LDFLAGS = -T$(srcdir)/../default.ld
+int_logger_LDADD = ../except/except.lo \
+ ../support/libsupport.la
-int_logger_level_SOURCES = int-logger-level.c
-int_logger_level_LDFLAGS = -T$(srcdir)/../default.ld
-int_logger_level_LDADD = ../except/except.lo \
- ../support/libsupport.la
-
all: all-am
.SUFFIXES:
@@ -272,12 +259,9 @@
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-int-logger-edge$(EXEEXT): $(int_logger_edge_OBJECTS) $(int_logger_edge_DEPENDENCIES)
- @rm -f int-logger-edge$(EXEEXT)
- $(int_logger_edge_LINK) $(int_logger_edge_OBJECTS) $(int_logger_edge_LDADD) $(LIBS)
-int-logger-level$(EXEEXT): $(int_logger_level_OBJECTS) $(int_logger_level_DEPENDENCIES)
- @rm -f int-logger-level$(EXEEXT)
- $(int_logger_level_LINK) $(int_logger_level_OBJECTS) $(int_logger_level_LDADD) $(LIBS)
+int-logger$(EXEEXT): $(int_logger_OBJECTS) $(int_logger_DEPENDENCIES)
+ @rm -f int-logger$(EXEEXT)
+ $(int_logger_LINK) $(int_logger_OBJECTS) $(int_logger_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -285,8 +269,7 @@
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/int-logger-edge.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/int-logger-level.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/int-logger.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
/testsuite/test-code-or1k/int-logger/Makefile.am
24,21 → 24,12
# ----------------------------------------------------------------------------- |
|
|
# Test programs which report on interrupts received. One for edge triggered, |
# one for level triggered. |
check_PROGRAMS = int-logger-edge \ |
int-logger-level |
# Test program which reports on interrupts received. |
check_PROGRAMS = int-logger |
|
int_logger_edge_SOURCES = int-logger-edge.c |
int_logger_SOURCES = int-logger.c |
|
int_logger_edge_LDFLAGS = -T$(srcdir)/../default.ld |
int_logger_LDFLAGS = -T$(srcdir)/../default.ld |
|
int_logger_edge_LDADD = ../except/except.lo \ |
../support/libsupport.la |
|
int_logger_level_SOURCES = int-logger-level.c |
|
int_logger_level_LDFLAGS = -T$(srcdir)/../default.ld |
|
int_logger_level_LDADD = ../except/except.lo \ |
../support/libsupport.la |
int_logger_LDADD = ../except/except.lo \ |
../support/libsupport.la |
/testsuite/test-code-or1k/loop/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mc-dram/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mc-ssram/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/acv-uart/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/inst-set-test/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/fbtest/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/ChangeLog
1,3 → 1,20
2010-11-25 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* configure: Regenerated. |
* configure.ac: Updated version. |
* support/spr-defs.h: References to PICPR removed. |
|
2010-11-24 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* configure: Regenerated. |
* configure.ac: Updated version. |
* int-logger/int-logger-edge.c: Deleted. |
* int-logger/int-logger-level.c: Deleted. |
* int-logger/int-logger.c: Created. |
* int-logger/Makefile.am: Changed to create a single program, |
int-logger. |
* int-logger/Makefile.in: Regenerated. |
|
2010-11-11 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* configure: Regenerated. |
/testsuite/test-code-or1k/local-global/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mul/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mmu/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/cfg/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/dmatest/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/except-test/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/acv-gpio/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/dhry/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/uos/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/int-test/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/flag/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/exit/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mc-sync/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/mc-async/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/support/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code-or1k/support/spr-defs.h
153,7 → 153,6
|
/* PIC group */ |
#define SPR_PICMR (SPRGROUP_PIC + 0) |
#define SPR_PICPR (SPRGROUP_PIC + 1) |
#define SPR_PICSR (SPRGROUP_PIC + 2) |
|
/* Tick Timer group */ |
569,12 → 568,6
#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ |
|
/* |
* Bit definitions for PICPR |
* |
*/ |
#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ |
|
/* |
* Bit definitions for PICSR |
* |
*/ |
/testsuite/test-code-or1k/aclocal.m4
1,4 → 1,4
# generated automatically by aclocal 1.11 -*- Autoconf -*- |
# generated automatically by aclocal 1.11.1 -*- Autoconf -*- |
|
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, |
# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. |
13,8 → 13,8
|
m4_ifndef([AC_AUTOCONF_VERSION], |
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],, |
[m4_warning([this file was generated for autoconf 2.64. |
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, |
[m4_warning([this file was generated for autoconf 2.65. |
You have another version of autoconf. It may work, but is not guaranteed to. |
If you have problems, you may need to regenerate the build system entirely. |
To do so, use the procedure documented by the package, typically `autoreconf'.])]) |
34,7 → 34,7
[am__api_version='1.11' |
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to |
dnl require some minimum version. Point them to the right macro. |
m4_if([$1], [1.11], [], |
m4_if([$1], [1.11.1], [], |
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl |
]) |
|
50,7 → 50,7
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. |
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. |
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], |
[AM_AUTOMAKE_VERSION([1.11])dnl |
[AM_AUTOMAKE_VERSION([1.11.1])dnl |
m4_ifndef([AC_AUTOCONF_VERSION], |
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) |
/testsuite/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
317,7 → 317,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
342,7 → 342,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
/testsuite/config/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/lib/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/or1ksim.tests/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/ChangeLog
1,3 → 1,18
2010-11-25 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* libsim.tests/int-edge.exp: Updated for new interrupt interface. |
* libsim.tests/int-level.exp: Updated for new interrupt interface. |
* README: Updated to change number of interrupt tests in library. |
|
2010-11-24 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* test-code/lib-inttest/Makefile.am: Updated to use lib-inttest.c |
to build a single program. |
* test-code/lib-inttest/Makefile.in: Regenerated. |
* test-code/lib-inttest/lib-inttest.c: Created. |
* test-code/lib-inttest/lib-inttest-edge.c: Deleted. |
* test-code/lib-inttest/lib-inttest-level.c: Deleted. |
|
2010-09-07 Jeremy Bennett <jeremy.bennett@embecosm.com> |
|
* libsim.tests/int-edge.exp <int-edge simple 1>: Increase time |
/testsuite/test-code/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
301,7 → 301,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
326,7 → 326,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
/testsuite/test-code/lib-iftest/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code/lib-upcalls/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code/lib-jtag/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/testsuite/test-code/lib-inttest/lib-inttest-level.c
File deleted
testsuite/test-code/lib-inttest/lib-inttest-level.c
Property changes :
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Id
\ No newline at end of property
Index: testsuite/test-code/lib-inttest/lib-inttest-edge.c
===================================================================
--- testsuite/test-code/lib-inttest/lib-inttest-edge.c (revision 430)
+++ testsuite/test-code/lib-inttest/lib-inttest-edge.c (nonexistent)
@@ -1,230 +0,0 @@
-/* lib-inttest-edge.c. Test of Or1ksim library edge triggered interrupt funcs.
-
- Copyright (C) 1999-2006 OpenCores
- Copyright (C) 2010 Embecosm Limited
-
- Contributors various OpenCores participants
- Contributor Jeremy Bennett
-
- This file is part of OpenRISC 1000 Architectural Simulator.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the Free
- Software Foundation; either version 3 of the License, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- more details.
-
- You should have received a copy of the GNU General Public License along
- with this program. If not, see . */
-
-/* ----------------------------------------------------------------------------
- This code is commented throughout for use with Doxygen.
- --------------------------------------------------------------------------*/
-
-#include
-#include
-
-#include "or1ksim.h"
-
-
-/*! Number of interrupts in PIC */
-#define NUM_INTS 32
-
-/*! Globally shared pointer to the interrupts */
-char **intv;
-
-/*! Number of interrupts to process */
-int intc;
-
-
-/* --------------------------------------------------------------------------*/
-/*!Trigger the next interrupt
-
- Generate the next edge triggered interrupt. Put out a message if doing so,
- and warn if the interrupt would be invalid.
-
- @return 1 (true) if an interrupt was triggered, 0 (false) otherwise. */
-/* --------------------------------------------------------------------------*/
-static int
-do_next_int ()
-{
- static int next_int = 0; /* Next interrupt to process */
-
- while (next_int < intc)
- {
- int inum = atoi (intv[next_int++]);
-
- if ((0 <= inum) && (inum < NUM_INTS))
- {
- printf ("Triggering interrupt %d\n", inum);
- or1ksim_interrupt (inum);
- return 1;
- }
- else
- {
- printf ("Warning: Invalid interrupt # %d - ignored\n", inum);
- }
- }
-
- return 0; /* No more interrupts to trigger */
-
-} /* do_next_int () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Read upcall
-
- Upcall from Or1ksim to read a word from an external peripheral. If called
- this will trigger an interrupt.
-
- @param[in] class_ptr A handle pass back from the initalization. Intended
- for C++ callers, not used here.
- @param[in] addr Address to read from. Ignored here.
- @param[in] mask Byte mask for the read. Ignored here.
- @param[out] rdata Buffer for the data read. Ignored here.
- @param[in] data_len Number of bytes in mask and rdata.
-
- @return Zero on success, non-zero on failure. Always zero here. */
-/* --------------------------------------------------------------------------*/
-static int
-read_upcall (void *class_ptr,
- unsigned long int addr,
- unsigned char mask[],
- unsigned char rdata[],
- int data_len)
-{
- do_next_int ();
-
- return 0; /* Success */
-
-} /* read_upcall () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Write upcall
-
- Upcall from Or1ksim to write a word to an external peripheral. If called
- this will trigger an interrupt.
-
- @param[in] class_ptr A handle pass back from the initalization. Intended
- for C++ callers, not used here.
- @param[in] addr Address to write to. Ignored here.
- @param[in] mask Byte mask for the write. Ignored here.
- @param[in] wdata The data to write. Ignored here.
- @param[in] data_len Number of bytes in mask and rdata.
-
- @return Zero on success, non-zero on failure. Always zero here. */
-/* --------------------------------------------------------------------------*/
-static int
-write_upcall (void *class_ptr,
- unsigned long int addr,
- unsigned char mask[],
- unsigned char wdata[],
- int data_len)
-{
- do_next_int ();
-
- return 0; /* Success */
-
-} /* write_upcall () */
-
-
-/* --------------------------------------------------------------------------*/
-/*!Main program
-
- Build an or1ksim program using the library which loads a program and config
- from the command line, and then drives interrupts. Usage:
-
- lib-inttest-edge ...
-
- is run for repeated perios of , during which it
- will make upcalls. Between each period and during each upcall an edge based
- interrupt will be triggered, until all interrupts listed have been
- triggered.
-
- @param[in] argc Number of elements in argv
- @param[in] argv Vector of program name and arguments
-
- @return Return code for the program. */
-/* --------------------------------------------------------------------------*/
-int
-main (int argc,
- char *argv[])
-{
- /* Parse args */
- if (argc < 5)
- {
- fprintf (stderr,
- "usage: lib-inttest-edge "
- " ...\n");
- return 1;
- }
-
- int duration_ms = atoi (argv[3]);
- double duration = (double) duration_ms / 1.0e3;
-
- if (duration_ms <= 0)
- {
- fprintf (stderr, "ERROR. Duration must be positive number of ms\n");
- return 1;
- }
-
- /* Dummy argv array to pass arguments to or1ksim_init. Varies depending on
- whether an image file is specified. */
- int dummy_argc;
- char *dummy_argv[5];
-
- dummy_argv[0] = "libsim";
- dummy_argv[1] = "-q";
- dummy_argv[2] = "-f";
- dummy_argv[3] = argv[1];
- dummy_argv[4] = argv[2];
-
- dummy_argc = 5;
-
- /* Initialize the program. Put the initialization message afterwards, or it
- will get swamped by the Or1ksim header. */
- if (0 == or1ksim_init (dummy_argc, dummy_argv, NULL, &read_upcall,
- &write_upcall))
- {
- printf ("Initalization succeeded.\n");
- }
- else
- {
- printf ("Initalization failed.\n");
- return 1;
- }
-
- /* Do each interrupt in turn. Set up the shared pointer to the interrupts
- and counter. */
- intv = &(argv[4]);
- intc = argc - 4;
-
- do
- {
- /* Run the code */
- if (OR1KSIM_RC_OK != or1ksim_run (duration))
- {
- printf ("ERROR: run failed\n");
- return 1;
- }
- }
- while (do_next_int ());
-
- /* One more run, to allow interrupt handler enough time to finish
- processing. */
- if (OR1KSIM_RC_OK != or1ksim_run (duration))
- {
- printf ("ERROR: run failed\n");
- return 1;
- }
-
- /* All interrupts should have been handled. */
- printf ("Test completed successfully.\n");
- return 0;
-
-} /* main () */
testsuite/test-code/lib-inttest/lib-inttest-edge.c
Property changes :
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Id
\ No newline at end of property
Index: testsuite/test-code/lib-inttest/Makefile.in
===================================================================
--- testsuite/test-code/lib-inttest/Makefile.in (revision 430)
+++ testsuite/test-code/lib-inttest/Makefile.in (revision 432)
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.11 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
@@ -59,7 +59,7 @@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-check_PROGRAMS = lib-inttest-edge$(EXEEXT) lib-inttest-level$(EXEEXT)
+check_PROGRAMS = lib-inttest$(EXEEXT)
subdir = testsuite/test-code/lib-inttest
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -73,12 +73,9 @@
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
-am_lib_inttest_edge_OBJECTS = lib-inttest-edge.$(OBJEXT)
-lib_inttest_edge_OBJECTS = $(am_lib_inttest_edge_OBJECTS)
-lib_inttest_edge_DEPENDENCIES = $(top_builddir)/libsim.la
-am_lib_inttest_level_OBJECTS = lib-inttest-level.$(OBJEXT)
-lib_inttest_level_OBJECTS = $(am_lib_inttest_level_OBJECTS)
-lib_inttest_level_DEPENDENCIES = $(top_builddir)/libsim.la
+am_lib_inttest_OBJECTS = lib-inttest.$(OBJEXT)
+lib_inttest_OBJECTS = $(am_lib_inttest_OBJECTS)
+lib_inttest_DEPENDENCIES = $(top_builddir)/libsim.la
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
@@ -92,9 +89,8 @@
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
-SOURCES = $(lib_inttest_edge_SOURCES) $(lib_inttest_level_SOURCES)
-DIST_SOURCES = $(lib_inttest_edge_SOURCES) \
- $(lib_inttest_level_SOURCES)
+SOURCES = $(lib_inttest_SOURCES)
+DIST_SOURCES = $(lib_inttest_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -230,14 +226,8 @@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-
-# Edge based interrupt
-lib_inttest_edge_SOURCES = lib-inttest-edge.c
-lib_inttest_edge_LDADD = $(top_builddir)/libsim.la
-
-# Level based interrupt
-lib_inttest_level_SOURCES = lib-inttest-level.c
-lib_inttest_level_LDADD = $(top_builddir)/libsim.la
+lib_inttest_SOURCES = lib-inttest.c
+lib_inttest_LDADD = $(top_builddir)/libsim.la
all: all-am
.SUFFIXES:
@@ -281,12 +271,9 @@
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-lib-inttest-edge$(EXEEXT): $(lib_inttest_edge_OBJECTS) $(lib_inttest_edge_DEPENDENCIES)
- @rm -f lib-inttest-edge$(EXEEXT)
- $(LINK) $(lib_inttest_edge_OBJECTS) $(lib_inttest_edge_LDADD) $(LIBS)
-lib-inttest-level$(EXEEXT): $(lib_inttest_level_OBJECTS) $(lib_inttest_level_DEPENDENCIES)
- @rm -f lib-inttest-level$(EXEEXT)
- $(LINK) $(lib_inttest_level_OBJECTS) $(lib_inttest_level_LDADD) $(LIBS)
+lib-inttest$(EXEEXT): $(lib_inttest_OBJECTS) $(lib_inttest_DEPENDENCIES)
+ @rm -f lib-inttest$(EXEEXT)
+ $(LINK) $(lib_inttest_OBJECTS) $(lib_inttest_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -294,8 +281,7 @@
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib-inttest-edge.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib-inttest-level.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib-inttest.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
/testsuite/test-code/lib-inttest/Makefile.am
24,17 → 24,8
# ----------------------------------------------------------------------------- |
|
|
# Test programs of the library interrupt driving functions. Two versions, one |
# to drive edge based interrupts, one to drive level based interrupts. |
check_PROGRAMS = lib-inttest-edge \ |
lib-inttest-level |
# Test program of the library interrupt driving functions. |
check_PROGRAMS = lib-inttest |
|
# Edge based interrupt |
lib_inttest_edge_SOURCES = lib-inttest-edge.c |
|
lib_inttest_edge_LDADD = $(top_builddir)/libsim.la |
|
# Level based interrupt |
lib_inttest_level_SOURCES = lib-inttest-level.c |
|
lib_inttest_level_LDADD = $(top_builddir)/libsim.la |
lib_inttest_SOURCES = lib-inttest.c |
lib_inttest_LDADD = $(top_builddir)/libsim.la |
/testsuite/README
12,8 → 12,8
Tests are provided for the standalone simulator (or1ksim) and for the library |
(libsim.a). |
|
At the time of writing a total of 2,539 tests compile, run and pass. That |
figure is broken down into 2,275 tests of the standalone simulator and 264 |
At the time of writing a total of 2,537 tests compile, run and pass. That |
figure is broken down into 2,275 tests of the standalone simulator and 262 |
tests of the library |
|
Configuration and make files are provided for further test programs. These |
87,10 → 87,10
testfloat 40 tests of detailed floating point behavior |
tick: 19 tests of the OR1K tick timer. |
|
A total of 264 tests of the libsim library: |
A total of 262 tests of the libsim library: |
|
int-edge: 6 tests of edge triggered interrupts. |
int-level: 5 tests of level triggered interrupts. |
int-level: 3 tests of level triggered interrupts. |
lib-iftest: 1 test of the basic library interface functions. |
jtag-basic: 17 tests of JTAG reset and instruction selection |
jtag-go-command-read: 60 tests of JTAG GO_COMMAND for reading |
/peripheral/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
400,7 → 400,7
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
$(RECURSIVE_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
425,7 → 425,7
fi; test -z "$$fail" |
|
$(RECURSIVE_CLEAN_TARGETS): |
@failcom='exit 1'; \ |
@fail= failcom='exit 1'; \ |
for f in x $$MAKEFLAGS; do \ |
case $$f in \ |
*=* | --[!k]*);; \ |
/peripheral/channels/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/mmu/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/vapi/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/bpb/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/sim-config.c
364,6 → 364,7
/* Programmable Interrupt Controller */ |
config.pic.enabled = 0; |
config.pic.edge_trigger = 1; |
config.pic.use_nmi = 1; |
|
if (config.pic.enabled) |
{ |
/support/Makefile.in
1,4 → 1,4
# Makefile.in generated by automake 1.11 from Makefile.am. |
# Makefile.in generated by automake 1.11.1 from Makefile.am. |
# @configure_input@ |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, |
/aclocal.m4
1,4 → 1,4
# generated automatically by aclocal 1.11 -*- Autoconf -*- |
# generated automatically by aclocal 1.11.1 -*- Autoconf -*- |
|
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, |
# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. |
13,8 → 13,8
|
m4_ifndef([AC_AUTOCONF_VERSION], |
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],, |
[m4_warning([this file was generated for autoconf 2.64. |
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, |
[m4_warning([this file was generated for autoconf 2.65. |
You have another version of autoconf. It may work, but is not guaranteed to. |
If you have problems, you may need to regenerate the build system entirely. |
To do so, use the procedure documented by the package, typically `autoreconf'.])]) |
34,7 → 34,7
[am__api_version='1.11' |
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to |
dnl require some minimum version. Point them to the right macro. |
m4_if([$1], [1.11], [], |
m4_if([$1], [1.11.1], [], |
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl |
]) |
|
50,7 → 50,7
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. |
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. |
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], |
[AM_AUTOMAKE_VERSION([1.11])dnl |
[AM_AUTOMAKE_VERSION([1.11.1])dnl |
m4_ifndef([AC_AUTOCONF_VERSION], |
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) |