Undesirable behaviour in semidet C?
Tyson Richard DOWD
trd at students.cs.mu.oz.au
Tue Apr 22 18:46:14 AEST 1997
Here's a problem I just spend several hours tracking down.
save_transient_registers();
SUCCESS_INDICATOR = ML_get_functors_check_range(FunctorNumber,
TypeInfo, &info);
restore_transient_registers();
On the SPARC, SUCCESS_INDICATOR is stored in %i5, which is a transient
register that is restored with its old value. This isn't so good...
Would it be much harder to create a declaration for SUCCESS_INDICATOR as
a bool, then put code after the C code that assigned SUCCESS_INDICATOR
to r1, rather than #defining SUCCESS_INDICATOR as r1?
--
Tyson Dowd #
# Sign on refrigerator:
trd at cs.mu.oz.au # Refrigerate after opening.
http://www.cs.mu.oz.au/~trd # - C. J. Owen.
More information about the developers
mailing list