Commit 8a0eb0cd by Uros Bizjak

i386-expand.c (ix86_expand_vector_init_one_nonzero): Use vector_set path for…

i386-expand.c (ix86_expand_vector_init_one_nonzero): Use vector_set path for TARGET_MMX_WITH_SSE && TARGET_SSE4_1.

	* config/i386/i386-expand.c (ix86_expand_vector_init_one_nonzero)
	<case E_V8QImode>: Use vector_set path for
	TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
	(ix86_expand_vector_init_one_nonzero) <case E_V8QImode>:
	Do not widen for TARGET_MMX_WITH_SSE && TARGET_SSE4_1.

From-SVN: r274490
parent 8069cc6b
2019-08-14 Uroš Bizjak <ubizjak@gmail.com>
* config/i386/i386-expand.c (ix86_expand_vector_init_one_nonzero)
<case E_V8QImode>: Use vector_set path for
TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
(ix86_expand_vector_init_one_nonzero) <case E_V8QImode>:
Do not widen for TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
2019-08-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
* builtins.c (expand_builtin_init_descriptor): Set memory alignment.
......@@ -15,10 +23,11 @@
* varasm.c (default_section_type_flags): Add support for "noinit"
section.
(default_elf_select_section): Add support for "noinit" attribute.
* config/msp430/msp430.c (msp430_attribute_table): Remove "noinit" entry.
* config/msp430/msp430.c (msp430_attribute_table): Remove
"noinit" entry.
2019-08-14 Richard Biener <rguenther@suse.de>
Uroš Bizjak <ubizjak@gmail.com>
Uroš Bizjak <ubizjak@gmail.com>
PR target/91154
* config/i386/i386-features.h (scalar_chain::scalar_chain): Add
......@@ -644,8 +653,9 @@
2019-08-13 Uroš Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (ix86_expand_vector_extract) <case E_V2SImode>:
Use vec_extr path for TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
* config/i386/i386-expand.c (ix86_expand_vector_extract)
<case E_V2SImode>: Use vec_extr path for
TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
<case E_V8QImode>: Ditto.
* config/i386/mmx.md (*mmx_pextrw_zext): Rename from mmx_pextrw.
Use SWI48 mode iterator. Use %k to output operand 0.
......@@ -842,8 +852,9 @@
2019-08-13 Uroš Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (ix86_expand_vector_set) <case E_V2SImode>:
Use vec_merge path for TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
* config/i386/i386-expand.c (ix86_expand_vector_set)
<case E_V2SImode>: Use vec_merge path for
TARGET_MMX_WITH_SSE && TARGET_SSE4_1.
<case E_V8QImode>: Ditto.
* config/i386/mmx.md (*mmx_pinsrd): New insn pattern.
(*mmx_pinsrb): Ditto.
......
......@@ -13383,6 +13383,9 @@ ix86_expand_vector_init_one_nonzero (bool mmx_ok, machine_mode mode,
case E_V8HImode:
use_vector_set = TARGET_SSE2;
break;
case E_V8QImode:
use_vector_set = TARGET_MMX_WITH_SSE && TARGET_SSE4_1;
break;
case E_V4HImode:
use_vector_set = TARGET_SSE || TARGET_3DNOW_A;
break;
......@@ -13590,6 +13593,8 @@ ix86_expand_vector_init_one_var (bool mmx_ok, machine_mode mode,
wmode = V8HImode;
goto widen;
case E_V8QImode:
if (TARGET_MMX_WITH_SSE && TARGET_SSE4_1)
break;
wmode = V4HImode;
goto widen;
widen:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment