This is the mail archive of the gcc@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]

-mno-80387 and MMX autovectorisation


Hello!

Current mainline gcc can efficiently disable x87 instruction when
-mno-80387 switch is used. In this case, MMX registers can be used for
the autovectorisation even without emms or femms instructions to
switch back to x87 mode.

-mno-80387 introduces ABI change, so existing libraries are already
incompatible with -mno-80387 compiled programs.

Attached RFC patch shows the condition to enable MMX vectorisation. To
generate MMX instructions, a bunch of patterns in mmx.md has also to
be renamed, as shown in the patch of PR target/14559. The benefits of
this approach is the usage of another set otherwise idle 128bit
registers in addition to existing SSE regs. Also, integer
vectorisation could be easily enabled for (embedded) MMX processors.

Uros.

Attachment: mmx.diff
Description: Binary data


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