Michael Matz wrote:
> On Tue, 26 Jul 2011, Michael Matz wrote:
> > On Tue, 26 Jul 2011, Ulrich Weigand wrote:
> > 
> > > > Well, REG_ATTRS->decl is again a decl, not an SSA name.  I suppose
> > > > we'd need to pick a conservative REGNO_POINTER_ALIGN during
> > > > expansion of the SSA name partition - iterate over all of them in the
> > > > partition and pick the lowest alignment.  Or even adjust the 
> > > > partitioning
> > > > to avoid losing alignment information that way.
> > > 
> > > That would certainly be helpful.
> > 
> > I'm working on a patch for that, stay tuned.
> 
> Like so.  Currently in regstrapping on x86_64-linux.  Could you try if it 
> helps spu?

Well, it does help SPU in the sense that the wrong code generation goes away.

However, it does so by setting REGNO_POINTER_ALIGN to the minimum of 8 just
about every time -- not sure what the impact on generated code quality is.

Maybe get_pointer_alignment should default to the type's alignment if
nothing more specific is known, at least on STRICT_ALIGNMENT targets?
Just like MEM_ALIGN defaults to the mode's alignment ...

Thanks,
Ulrich

-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  ulrich.weig...@de.ibm.com

Reply via email to