> > > Are you able to run this script with the latest simulavr? > > > > As soon as > > > > > I try to call either floating or fixed point routines, I am getting > > > errors: > > > > > > rm: cannot remove `core_avr_dump.core': No such file or directory
Hi, I have try the latest simulavr: the same error in result. 1. The latest simulavr is partially broken: the run of first test (__addsf3) is failed with 'atmega8' target with message: devsupp.c:321: ERROR: reference vdev hasn't been created yet The 'at90s8515' target is OK. (Eric, I will look this in details. I am interesting in simulavr usage). 2. My script was too poor in extracting of clock number. The format of this line is changed in comparison to 0.1.2.1 version, this leads to wrong result, like 7 cycles. I have correct this (in attach): '[0-9]+ clock cycles'. Now you can run the latest simulavr with 'at90s8515' target only (MCU_LIST), or you can install simulavr-0.1.2.1 with the patch (in attach). The critical is only 1 part of patch: where the division by zero is excluded. Regards, Dmitry.
bench-libm.sh
Description: application/shellscript
diff -Naur simulavr-0.1.2.1/doc/Makefile.in simulavr-20061216/doc/Makefile.in
--- simulavr-0.1.2.1/doc/Makefile.in 2004-01-19 09:58:29.000000000 +1000
+++ simulavr-20061216/doc/Makefile.in 2006-12-16 15:50:26.000000000 +1000
@@ -472,7 +472,7 @@
html: $(info_TEXINFOS) $(TARGET_DOX_HTML)
mkdir -p html
texi2html -split_node $(srcdir)/$(info_TEXINFOS)
- mv *.html html
+ mv *.html html || mv simulavr/*.html html
if test -f html/simulavr.html ; then \
cp html/simulavr.html html/index.html ; \
else \
diff -Naur simulavr-0.1.2.1/src/avrcore.c simulavr-20061216/src/avrcore.c
--- simulavr-0.1.2.1/src/avrcore.c 2004-01-02 13:01:01.000000000 +1000
+++ simulavr-20061216/src/avrcore.c 2006-12-16 15:48:34.000000000 +1000
@@ -1006,7 +1006,8 @@
somewhere else. */
/* Execute the asynchronous callbacks */
- avr_core_async_cb_exec (core);
+ if (core->async_cb)
+ avr_core_async_cb_exec (core);
/* Check interrupts here. If the previous instruction was a reti, then we
need to delay handling of any pending IRQs until after the next
@@ -1070,10 +1071,11 @@
avr_message ("Run time was %lld.%03lld seconds.\n", run_time / 1000,
run_time % 1000);
avr_message ("Executed %lld instructions.\n", cnt);
- avr_message (" %lld insns/sec\n", (cnt * 1000) / run_time);
+ avr_message (" %lld insns/sec\n",
+ run_time ? (cnt * 1000) / run_time : 0LL);
avr_message ("Executed %lld clock cycles.\n", avr_core_CK_get (core));
avr_message (" %lld clks/sec\n",
- (avr_core_CK_get (core) * 1000) / run_time);
+ run_time ? (avr_core_CK_get (core) * 1000) / run_time : 0LL);
}
/** \brief Sets the simulated CPU back to its initial state.
diff -Naur simulavr-0.1.2.1/src/disp-vcd/vcd.h simulavr-20061216/src/disp-vcd/vcd.h
--- simulavr-0.1.2.1/src/disp-vcd/vcd.h 2002-11-17 10:29:20.000000000 +1000
+++ simulavr-20061216/src/disp-vcd/vcd.h 2006-12-16 15:48:34.000000000 +1000
@@ -47,7 +47,7 @@
/* Interface for disp.c */
int vcd_write_header( void );
-inline int vcd_set_clock( unsigned int c );
+int vcd_set_clock( unsigned int c );
int vcd_write_clock( void );
int vcd_bind_io_reg_shortcut( char *io_reg_name, int io_reg_addr );
_______________________________________________ AVR-libc-dev mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/avr-libc-dev
