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