This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Bug target/14552] compiled trivial vector intrinsic code is inefficient


See pr 33790.

Sent from my iPhone

On Mar 19, 2008, at 17:04, "ubizjak at gmail dot com" <gcc-bugzilla@gcc.gnu.org > wrote:



------- Comment #30 from ubizjak at gmail dot com 2008-03-20 00:04 -------
(In reply to comment #28)
(In reply to comment #27)
The store is not useless. Reload from "_w" is how gcc handles double stores
nowadays and is not mmx specific. It looks that some pass forgot to check where
the value came from.

Do you happen to know if there are two different modes at work here? If so
there are patches which fix this up in DSE and post-reload CSE.

Yes, from comment #24 (slightly changed):


typedef short mmxw  __attribute__ ((vector_size (8)));
typedef int   mmxdw __attribute__ ((vector_size (8)));

mmxdw dw;
mmxw w;

so, we have V4HI and V2SI.


--



http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14552




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]