<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 17-Feb-16 15:22, Henry Bent wrote:<br>
</div>
<blockquote
cite="mid:CAEdTPBd0a9m48Ov5=as9B8Y5j=51sXQmq-K7eH7=-HBLME3ecg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><br>
<div>I can reproduce this on OS X 10.11.3:<br>
<br>
sim> show version<br>
VAX 11/780 simulator V4.0-0 Beta<br>
Simulator Framework Capabilities:<br>
64b data<br>
64b addresses<br>
Ethernet Packet
transports:PCAP:TAP:NAT:UDP<br>
Idle/Throttling support is available<br>
Virtual Hard Disk (VHD) support<br>
Asynchronous I/O support<br>
FrontPanel API Version 2<br>
Host Platform:<br>
Compiler: GCC 4.2.1 Compatible Apple LLVM
7.0.2 (clang-700.1.81)<br>
Simulator Compiled: Feb 17 2016 at
15:01:37<br>
Memory Access: Little Endian<br>
Memory Pointer Size: 64 bits<br>
Large File (>2GB) support<br>
SDL Video support: No Video Support<br>
RegEx support for EXPECT commands<br>
OS clock resolution: 1ms<br>
Time taken by msleep(1): 2ms<br>
OS: Darwin <a moz-do-not-send="true"
href="http://Shibaers-Mini.westell.com">Shibaers-Mini.westell.com</a>
15.3.0 Darwin Kernel Version 15.3.0: Thu Dec 10 18:40:58
PST 2015; root:xnu-3248.30.4~1/RELEASE_X86_64 x86_64<br>
git commit id: aadd66c7<br>
<br>
</div>
</div>
Switching to -O1 instead of -O2 doesn't make a difference.
Switching to -O0 gives a different error:<br>
<br>
VAX 11/780 simulator V4.0-0 Beta git commit id:
aadd66c7<br>
libpcap version 1.5.3 - Apple version 54<br>
Abort trap: 6<br>
<br>
</div>
<div class="gmail_extra">I'll see if I can narrow things down a
little bit more. Michael, maybe it's easiest to open a github
issue for this so it can be tracked there?<br>
</div>
</div>
</blockquote>
-O0 still leaves some optimizations on.<br>
<br>
You need to fuss with -fno-* to get even fewer.<br>
<br>
But if simh has an issue, it really ought to be tracked down
fixed. Shutting off 'optimization' is a really hard thing to do
across multiple platforms - the definition of what's an optimization
varies, as does the ability to shut it off.<br>
<br>
Not to mention that wasted performance out to be a crime.<br>
<br>
I tend to go the other way - Wall doesn't turn on ALL warnings.
Often turning on every sensible warning -- and fixing them - is a
faster route. For GCC, you pretty much need the man page for that
version to find them all.<br>
<br>
-Wall -Wextra are a start.<br>
<br>
gcc -Q --help=warning<br>
<br>
will give a list - but you have to review it to see which ones
actually make sense.<br>
<br>
overflow, signed/unsigned, loop optimizations and aliasing are the
usual suspects that come immediately to mind.<br>
<br>
Annoying things were GCC thinks something is uninitialized because
it can't see that all paths do set it to something are worth fixing
(just explicitly set to 0); you never know what the optimizer will
do.<br>
<br>
Good hunting.<br>
<br>
(I don't have a Mac)<br>
<br>
</body>
</html>