On Wednesday, March 13, 2013 at 1:42 PM, Dave McGuire wrote:
On 03/13/2013 04:21 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions
-fgcse-after-reload -fpredictive-commoning -fipa-cp-clone
-fno-unsafe-loop-optimizations -fno-strict-overflow -flto
-fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE
-DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so
sim_BuildROMs.c
-o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available
when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks the snot out
of GCC for SPARC code generation. I did give you a copy.
I would suggest that this would be a good idea.
I have an old SparcStation which I fire up once every few years to test simh on a Big Endian platform. It has a Linux disk and a Solaris disk (I don't recall the version). I do not have a sun C compiler. The last time I fired it up (more than a year ago) the basic testing worked out fine but I noticed that some things were so slow it was practically unusable. I isolated some slow behavior down to an operation which walked across a 64MB chunk of VAX memory one byte at a time. The 64MB array is stored in a single malloc'ed area. This walk across the 64MB took some 20 seconds, while the same operation on my Windows desktop takes far less than any time I could measure on my watch. My theory was that it was spending all of its time in the alignment trap handler, but I didn't have enough knowledge to dig into the details.
The test case is demonstrated by the following commands:
$ BIN/vax
MicroVAX 3900 simulator V4.0-0 Beta
sim> set cpu 64m
sim> save somefile
The save operation writes the current simulator state to a file.
- Mark
On 13 Mar 2013, at 16:58, "Mark Pizzolato - Info Comm" <Mark at infocomm.com> wrote:
On Wednesday, March 13, 2013 at 1:21 PM, Cory Smelosky wrote:
bash-3.2$ gmake vax
lib paths are: /lib /usr/lib
using libm: /lib/libm.so
using librt: /lib/librt.so
using libpthread: /lib/libpthread.so /usr/include/pthread.h
using libdl: /lib/libdl.so /usr/include/dlfcn.h
using libpcap: /usr/local/lib/libpcap.a /usr/local/include/pcap.h
*** Warning ***
*** Warning *** vax Simulator being built with networking support using
*** Warning *** libpcap components from www.tcpdump.org.
*** Warning *** Some users have had problems using the
www.tcpdump.org libpcap
*** Warning *** components for simh networking. For best results, with
*** Warning *** simh networking, it is recommended that you install the
*** Warning *** libpcap-dev package from your Solaris distribution
*** Warning ***
***
*** vax Simulator being built with:
*** - compiler optimizations and no debugging support. GCC Version: 4.6.3..
*** - networking support using libpcap components from
www.tcpdump.org.
***
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -
fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-
strict-overflow -flto -fwhole-program -Wno-unused-result -I . -
D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -
DHAVE_DLOPEN=so sim_BuildROMs.c -o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available when building a
shared object
ld: fatal: flags processing errors
Modification to makefile is to remove -flto -fwhole-program. Then it builds
fine. ;)
I'd like to get this to work without any modifications to the makefile.
Can you send the output of the following:
$ gcc --help=optimizers
$ gcc -v --help
$ gcc -v /dev/null
Thanks.
http://pastebin.com/ijqnUajq
- Mark
On 03/13/2013 05:02 PM, Mark Pizzolato - Info Comm wrote:
You'll also have to change any GCC-specific options ("-f<xxx") in
the Makefile.
I don't think gcc specific options are used if the compiler isn't gcc. That is
why I'd like to know 'how things work out'....
I seem to recall that they were, the last time I did it, but it has been awhile
since I did that build.
The makefile was drastically rewritten in simh v3.9 (last May) and even more so since then.
Ahh ok, excellent.
-Dave
--
Dave McGuire, AK4HZ
New Kensington, PA
On Wednesday, March 13, 2013 at 1:57 PM, Dave McGuire wrote:
On 03/13/2013 04:50 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:48 PM, Dave McGuire wrote:
On 03/13/2013 04:46 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:42 PM. Dave McGuire wrote:
On 03/13/2013 04:21 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions
-fgcse-after-reload -fpredictive-commoning -fipa-cp-clone
-fno-unsafe-loop-optimizations -fno-strict-overflow -flto
-fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE
-DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so
sim_BuildROMs.c
-o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only
available when building a shared object
First of all, Cory...have you tried using Sun's compiler? It
kicks the snot out of GCC for SPARC code generation. I did give you a
copy.
In case it isn't obvious, using this makefile with a different
compiler (called
suncc for instance) is done by:
$ make GCC=suncc vax
Let me know how things work out....
You'll also have to change any GCC-specific options ("-f<xxx") in
the Makefile.
I don't think gcc specific options are used if the compiler isn't gcc. That is
why I'd like to know 'how things work out'....
I seem to recall that they were, the last time I did it, but it has been awhile
since I did that build.
The makefile was drastically rewritten in simh v3.9 (last May) and even more so since then.
- Mark
On Wednesday, March 13, 2013 at 1:21 PM, Cory Smelosky wrote:
bash-3.2$ gmake vax
lib paths are: /lib /usr/lib
using libm: /lib/libm.so
using librt: /lib/librt.so
using libpthread: /lib/libpthread.so /usr/include/pthread.h
using libdl: /lib/libdl.so /usr/include/dlfcn.h
using libpcap: /usr/local/lib/libpcap.a /usr/local/include/pcap.h
*** Warning ***
*** Warning *** vax Simulator being built with networking support using
*** Warning *** libpcap components from www.tcpdump.org.
*** Warning *** Some users have had problems using the
www.tcpdump.org libpcap
*** Warning *** components for simh networking. For best results, with
*** Warning *** simh networking, it is recommended that you install the
*** Warning *** libpcap-dev package from your Solaris distribution
*** Warning ***
***
*** vax Simulator being built with:
*** - compiler optimizations and no debugging support. GCC Version: 4.6.3.
*** - networking support using libpcap components from
www.tcpdump.org.
***
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -
fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-
strict-overflow -flto -fwhole-program -Wno-unused-result -I . -
D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -
DHAVE_DLOPEN=so sim_BuildROMs.c -o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available when building a
shared object
ld: fatal: flags processing errors
Modification to makefile is to remove -flto -fwhole-program. Then it builds
fine. ;)
I'd like to get this to work without any modifications to the makefile.
Can you send the output of the following:
$ gcc --help=optimizers
$ gcc -v --help
$ gcc -v /dev/null
Thanks.
- Mark
On 03/13/2013 04:50 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:48 PM, Dave McGuire wrote:
On 03/13/2013 04:46 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:42 PM. Dave McGuire wrote:
On 03/13/2013 04:21 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions
-fgcse-after-reload -fpredictive-commoning -fipa-cp-clone
-fno-unsafe-loop-optimizations -fno-strict-overflow -flto
-fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE
-DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so
sim_BuildROMs.c
-o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only
available when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks
the snot out of GCC for SPARC code generation. I did give you a copy.
In case it isn't obvious, using this makefile with a different compiler (called
suncc for instance) is done by:
$ make GCC=suncc vax
Let me know how things work out....
You'll also have to change any GCC-specific options ("-f<xxx") in the
Makefile.
I don't think gcc specific options are used if the compiler isn't gcc. That is why I'd like to know 'how things work out'....
I seem to recall that they were, the last time I did it, but it has
been awhile since I did that build.
-Dave
--
Dave McGuire, AK4HZ
New Kensington, PA
On 13 Mar 2013, at 16:49, "Dave McGuire" <mcguire at neurotica.com> wrote:
On 03/13/2013 04:45 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-strict-overflow -flto -fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so sim_BuildROMs.c -o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks
the snot out of GCC for SPARC code generation. I did give you a copy.
Unfortunately I missed backing that up in the OS version testing it slipped my mind. :(
You mean I went through all that trouble installing and configuring
Solaris for you on that machine and you reloaded it? Fucker.
In my defense I needed to learn how to install Solaris from scratch. ;)
I'll put the compiler up for download shortly. I'm flying out for
work tomorrow at oh-God-thirty AM so it will have to be in a couple of
days. Ping me.
Okay. Will do. Thanks.
-Dave
--
Dave McGuire, AK4HZ
New Kensington, PA
On Wednesday, March 13, 2013 at 1:48 PM, Dave McGuire wrote:
On 03/13/2013 04:46 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:42 PM. Dave McGuire wrote:
On 03/13/2013 04:21 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions
-fgcse-after-reload -fpredictive-commoning -fipa-cp-clone
-fno-unsafe-loop-optimizations -fno-strict-overflow -flto
-fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE
-DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so
sim_BuildROMs.c
-o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only
available when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks
the snot out of GCC for SPARC code generation. I did give you a copy.
In case it isn't obvious, using this makefile with a different compiler (called
suncc for instance) is done by:
$ make GCC=suncc vax
Let me know how things work out....
You'll also have to change any GCC-specific options ("-f<xxx") in the
Makefile.
I don't think gcc specific options are used if the compiler isn't gcc. That is why I'd like to know 'how things work out'....
- Mark
On 03/13/2013 04:45 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-strict-overflow -flto -fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so sim_BuildROMs.c -o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks
the snot out of GCC for SPARC code generation. I did give you a copy.
Unfortunately I missed backing that up in the OS version testing it slipped my mind. :(
You mean I went through all that trouble installing and configuring
Solaris for you on that machine and you reloaded it? Fucker.
I'll put the compiler up for download shortly. I'm flying out for
work tomorrow at oh-God-thirty AM so it will have to be in a couple of
days. Ping me.
-Dave
--
Dave McGuire, AK4HZ
New Kensington, PA
On 03/13/2013 04:46 PM, Mark Pizzolato - Info Comm wrote:
On Wednesday, March 13, 2013 at 1:42 PM. Dave McGuire wrote:
On 03/13/2013 04:21 PM, Cory Smelosky wrote:
mkdir -p BIN
gcc -std=c99 -U__STRICT_ANSI__ -O2 -finline-functions
-fgcse-after-reload -fpredictive-commoning -fipa-cp-clone
-fno-unsafe-loop-optimizations -fno-strict-overflow -flto
-fwhole-program -Wno-unused-result -I . -D_GNU_SOURCE
-DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_DLOPEN=so
sim_BuildROMs.c
-o BIN/BuildROMs
ld: fatal: auxiliary filter option (-f, --auxiliary) is only available
when building a shared object
First of all, Cory...have you tried using Sun's compiler? It kicks the snot out
of GCC for SPARC code generation. I did give you a copy.
In case it isn't obvious, using this makefile with a different compiler (called suncc for instance) is done by:
$ make GCC=suncc vax
Let me know how things work out....
You'll also have to change any GCC-specific options ("-f<xxx") in the
Makefile.
-Dave
--
Dave McGuire, AK4HZ
New Kensington, PA