Commit a61a052b by John Hassey

Don't use fldcr to serialize it is broken on the 88110...

Don't use fldcr to serialize it is broken on the 88110, use tb1 instead
Made serialize-volatile the deault for all models.

From-SVN: r4967
parent 57bc9c68
......@@ -2687,6 +2687,13 @@ print_operand (file, x, code)
The mechanism below is completed by having CC_STATUS_INIT set
the code to the unknown value. */
/*
hassey 6/30/93
A problem with 88110 4.1 & 4.2 makes the use of fldcr for
this purpose undesirable. Instead we will use tb1, this will
cause serialization on the 88100 but such is life.
*/
static rtx last_addr = 0;
if (code == 'V' /* Only need to serialize before a load. */
&& m88k_volatile_code != 'V' /* Loads complete in FIFO order. */
......@@ -2694,12 +2701,16 @@ print_operand (file, x, code)
&& GET_CODE (XEXP (x, 0)) == LO_SUM
&& rtx_equal_p (XEXP (XEXP (x, 0), 1), last_addr)))
fprintf (file,
#if 0
#ifdef AS_BUG_FLDCR
"fldcr\t %s,%scr63\n\t",
#else
"fldcr\t %s,%sfcr63\n\t",
#endif
reg_names[0], m88k_pound_sign);
#else /* 0 */
"tb1\t 1,%s,0xff\n\t", reg_names[0]);
#endif /* 0 */
m88k_volatile_code = code;
last_addr = (GET_CODE (XEXP (x, 0)) == LO_SUM
? XEXP (XEXP (x, 0), 1) : 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment