I posted earlier about problems with illegal instructions resulting from 
math operations, integer or floating point.

I variously get "illegal instructions", "bus error", "Line 1010 
instruction" or "line 1111 instruction" when executing simple math 
operations such as:

Int32 a, b, c;
double d;
...
a = b * c;
...
a = b % 60;
...
d = (double)a;

We are using PRC-Tool chain 2.0 with the floating point patch.

The errors are reproducible in terms of which line cuases the problem 
(although it appears that changing the optimization level might change 
which line causes problems), but do not occur for every math operation.

The problem IS related to having a routine in a seperate code section 
(segment) as generated by multigen. Moving the "offending" code into the 
default cose section makes the problem go away, but I clearly cannot do 
this for every routine in a large program!

I do not think this is a floating point issue as it affects integer math 
more often then floating point.

Has anyone seen this behaviour? Any ideas whatsoever?

Cheers,
Erik Blake


-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/tech/support/forums/

Reply via email to