* SPE scalar float instructions
@ 2004-12-15 3:53 Zack Weinberg
2004-12-15 15:24 ` Kumar Gala
2004-12-15 17:16 ` Aldy Hernandez
0 siblings, 2 replies; 4+ messages in thread
From: Zack Weinberg @ 2004-12-15 3:53 UTC (permalink / raw)
To: gcc, Aldy Hernandez
Currently, the SPE scalar float instructions are predicated on
TARGET_HARD_FLOAT && !TARGET_FPRS (and TARGET_E500_DOUBLE for DFmode)
but not on TARGET_SPE. This can cause problems in an embedded context
- as one of CodeSourcery's customers points out,
> This will indeed post a problem, because those instructions require
> MSR[SPE] bit be set, which is not true for all cases. SPE unavailable
> exception may result.
I'm wondering if TARGET_SPE should be added to the controlling
condition for all those instructions. Thoughts?
zw
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: SPE scalar float instructions
2004-12-15 3:53 SPE scalar float instructions Zack Weinberg
@ 2004-12-15 15:24 ` Kumar Gala
2004-12-15 17:16 ` Aldy Hernandez
1 sibling, 0 replies; 4+ messages in thread
From: Kumar Gala @ 2004-12-15 15:24 UTC (permalink / raw)
To: Zack Weinberg; +Cc: gcc, Aldy Hernandez
Zack,
Not sure what TARGET_SPE implies (Aldy should know :)
However, we did want to keep the SPE scalar float usage separate from
the SPE vector instructions. Its feasible and possible that Freescale
may release a processor that implements only the scalar floating point
instructions and not the SIMD instructions.
- kumar
On Dec 14, 2004, at 9:42 PM, Zack Weinberg wrote:
>
>
> Currently, the SPE scalar float instructions are predicated on
> TARGET_HARD_FLOAT && !TARGET_FPRS (and TARGET_E500_DOUBLE for DFmode)
> but not on TARGET_SPE. This can cause problems in an embedded context
> - as one of CodeSourcery's customers points out,
>
> > This will indeed post a problem, because those instructions require
> > MSR[SPE] bit be set, which is not true for all cases. SPE
> unavailable
> > exception may result.
>
> I'm wondering if TARGET_SPE should be added to the controlling
> condition for all those instructions. Thoughts?
>
> zw
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: SPE scalar float instructions
2004-12-15 3:53 SPE scalar float instructions Zack Weinberg
2004-12-15 15:24 ` Kumar Gala
@ 2004-12-15 17:16 ` Aldy Hernandez
2004-12-15 17:54 ` Kumar Gala
1 sibling, 1 reply; 4+ messages in thread
From: Aldy Hernandez @ 2004-12-15 17:16 UTC (permalink / raw)
To: Zack Weinberg; +Cc: gcc
On Tue, Dec 14, 2004 at 07:42:19PM -0800, Zack Weinberg wrote:
>
> Currently, the SPE scalar float instructions are predicated on
> TARGET_HARD_FLOAT && !TARGET_FPRS (and TARGET_E500_DOUBLE for DFmode)
> but not on TARGET_SPE. This can cause problems in an embedded context
> - as one of CodeSourcery's customers points out,
>
> > This will indeed post a problem, because those instructions require
> > MSR[SPE] bit be set, which is not true for all cases. SPE unavailable
> > exception may result.
I'm not sure I follow the above? (??)
>
> I'm wondering if TARGET_SPE should be added to the controlling
> condition for all those instructions. Thoughts?
As Kumar mentioned, a there may be a chip with SPE but not FP in the
GPRs.
Also, suppose you have -mspe=yes -mfloat-gprs=no (or the opposite).
Aldy
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: SPE scalar float instructions
2004-12-15 17:16 ` Aldy Hernandez
@ 2004-12-15 17:54 ` Kumar Gala
0 siblings, 0 replies; 4+ messages in thread
From: Kumar Gala @ 2004-12-15 17:54 UTC (permalink / raw)
To: Aldy Hernandez; +Cc: Zack Weinberg, gcc
On Dec 15, 2004, at 10:59 AM, Aldy Hernandez wrote:
> On Tue, Dec 14, 2004 at 07:42:19PM -0800, Zack Weinberg wrote:
> >
> > Currently, the SPE scalar float instructions are predicated on
> > TARGET_HARD_FLOAT && !TARGET_FPRS (and TARGET_E500_DOUBLE for
> DFmode)
> > but not on TARGET_SPE. This can cause problems in an embedded
> context
> > - as one of CodeSourcery's customers points out,
> >
> > > This will indeed post a problem, because those instructions require
> > > MSR[SPE] bit be set, which is not true for all cases. SPE
> unavailable
> > > exception may result.
I missed this last time, and agree with aldy ??? -- on know on e500
there is an errata (that may not be fixed) with regards to causing an
exception for the set of instructions, however the architecture
specifies that the efs* instructions should NOT require MSR[SPE] to be
set. I'm looking into if and when this may be fixed on e500. However,
its not clear what the implication is to your customer.
>
> I'm not sure I follow the above? (??)
>
> >
> > I'm wondering if TARGET_SPE should be added to the controlling
> > condition for all those instructions. Thoughts?
>
> As Kumar mentioned, a there may be a chip with SPE but not FP in the
> GPRs.
>
> Also, suppose you have -mspe=yes -mfloat-gprs=no (or the opposite).
>
> Aldy
>
- kumar
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2004-12-15 17:54 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-12-15 3:53 SPE scalar float instructions Zack Weinberg
2004-12-15 15:24 ` Kumar Gala
2004-12-15 17:16 ` Aldy Hernandez
2004-12-15 17:54 ` Kumar Gala
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).