Andrew Pinski <[EMAIL PROTECTED]> writes:

> On Jun 20, 2005, at 10:54 AM, Sergei Organov wrote:
> 
> > so SYMBOL_FLAG_SMALL (flags 0x6 vs 0x2) is somehow being missed when -O1
> 
> > is turned on. Seems to be something at tree-to-RTX conversion time.
> > Constant folding?
> 
> No, it would mean that the target says that this is not a small data.
> Also try it with the following code and you will see there is no difference:
> 
>          double osvf() { return 314314314; }

There is no difference in the sense that here both -O0 and -O1 behave
roughly the same. So the problem is with detecting "smallness" for true
constants by the target, right?

But even then, if I fix that, there still will be a problem that for
given platform there doesn't seem to be a single reason to replace

double const osv = 314314314;
double osvf() { return osv; }

with

double const osv = 314314314;
double const .LC0 = 314314314;
double osvf() { return .LCO; }

where .LCO is compiler-generated symbol. And the latter does have
something to do with const folding, doesn't it?

-- 
Sergei.

Reply via email to