i386.h
122 KB
-
i386.c (override_options): If SSE, enable sse prefetch. · e37af218
* config/i386/i386.c (override_options): If SSE, enable sse prefetch. (ix86_expand_vector_move): New. (bdesc_2arg): Remove andps, andnps, orps, xorps. (ix86_init_mmx_sse_builtins): Make static. Remove composite builtins. Remove old prefetch builtins. Special case the logicals removed above. (ix86_expand_builtin): Likewise. (safe_vector_operand): Use V4SFmode, not TImode. (ix86_expand_store_builtin): Remove shuffle arg. Update callers. (ix86_expand_timode_binop_builtin): New. * config/i386/i386-protos.h: Update. * config/i386/i386.h (enum ix86_builtins): Update. * config/i386/i386.md: Correct predicates on MMX/SSE patterns. Use ix86_expand_vector_move in vector move expanders. (movti_internal, movti_rex64): Add xorps alternative. (sse_clrv4sf): Rename and adjust from sse_clrti. (prefetch): Don't work so hard. (prefetch_sse, prefetch_3dnow): Use PREFETCH rtx, not UNSPEC. * config/i386/xmmintrin.h (__m128): Use V4SFmode. (_mm_getcsr, _mm_setcsr): Fix typo in builtin name. From-SVN: r48796
Richard Henderson committed