delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/09/28/18:33:57

Date: 28 Sep 1994 10:00:29 -0700
From: "Brian Acton" <brian_acton AT powertalk DOT apple DOT com>
Subject: djgpp and the 386SX
To: "djgpp AT sun DOT soe DOT clarkson DOT edu" <djgpp AT sun DOT soe DOT clarkson DOT edu>

Hello All,

I have two computers: a 386SX/16 and a 486/25, and I seem to have problems
getting programs to run with the 386SX. On my 486, the program runs perfectly
and I don't have any apparent problems. However, when I try to run the same
program with a 386SX, the program locks up (ctrl-c fails). If I then use GDB
to try to find the line that the program is crashing on, I find that I can
ctrl-c out of the lock up and GDB tells me that a floating point exception
occurred (which is possible since I am using some code that is not my own).
If I then add the following to my autoexec.bat:

set GO32=emu c:/djgpp/bin/emu387

I still get the floating point exception in gdb, and the program still hangs
outside of gdb.

I'm compiling with the flags "-mno-486"

The lines of code that appear to generate the floating point exception are:

int i;
int j;

for (i=0; i < 40000; i++) {
	if (i < j ) j++;
}

or something similar to this. I do not see anything to do with floating point
in the above, yet I don't want to rule out a floating point emulation problem
either.

Am I missing something? Does djgpp have problems with the 386sx because it's
not a dx? Am I setting up the 387 emulation incorrectly? Should I use a
compiler flag I don't know about? Have I missed something in the
documentation?

Any help would be greatly appreciated

Brian Acton




- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019