diff options
author | Richard Henderson <rth@redhat.com> | 2012-06-26 20:19:51 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2012-06-26 20:19:51 -0700 |
commit | 298301d9e7ef43ab3475495446c9d9378cf6fb31 (patch) | |
tree | 2f0f80a671b4ba2cbfaee3a36e454d7c3465a624 /gcc/config/i386/i386-protos.h | |
parent | e2a3a0987fdacf48defcc6f89a92197026d2bde4 (diff) | |
download | gcc-298301d9e7ef43ab3475495446c9d9378cf6fb31.zip gcc-298301d9e7ef43ab3475495446c9d9378cf6fb31.tar.gz gcc-298301d9e7ef43ab3475495446c9d9378cf6fb31.tar.bz2 |
i386: Expand mul<VI8_AVX2> earlier
Move the expansion code to i386.c next to mulv4si3. Eliminate
one shift by adding the highparts before shifting. Correct costs.
* config/i386/sse.md (mul<VI8_AVX2>3): Change from insn_and_split
to expander; move guts to ...
* config/i386/i386.c (ix86_expand_sse2_mulvxdi3): ... here. Add
highparts before shifting up.
* config/i386/i386-protos.h: Update.
From-SVN: r189005
Diffstat (limited to 'gcc/config/i386/i386-protos.h')
-rw-r--r-- | gcc/config/i386/i386-protos.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h index c860e5a..581b25c 100644 --- a/gcc/config/i386/i386-protos.h +++ b/gcc/config/i386/i386-protos.h @@ -227,6 +227,7 @@ extern bool ix86_expand_pinsr (rtx *); extern void ix86_expand_mul_widen_evenodd (rtx, rtx, rtx, bool, bool); extern void ix86_expand_mul_widen_hilo (rtx, rtx, rtx, bool, bool); extern void ix86_expand_sse2_mulv4si3 (rtx, rtx, rtx); +extern void ix86_expand_sse2_mulvxdi3 (rtx, rtx, rtx); /* In i386-c.c */ extern void ix86_target_macros (void); |