------- Additional Comments From rth at gcc dot gnu dot org 2005-01-11 23:58 ------- Your first test case is fixed by the patch for PR13366. We now get
.align 16 .LC0: .long 1067869798 .long 1067869798 .long 1067869798 .long 1067869798 ... movaps .LC0, %xmm0 movups %xmm0, 56(%esp) I really don't know what you expected out of your second test case. Perhaps the problem is that we don't expose what movups means to the compiler. I can see that perhaps we could reuse MISALIGNED_INDIRECT_REF to represent this (which as a side benefit would result in movhps+movlps instead of one movups, which runs faster). But I doubt that we have the machinery at the tree level to copy-propagate the aggregate initialization from val1[4] -> result[4]. I'm pretty sure that we have open enhancement requests for this already. So shall we mark this fixed? -- What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18562