avx-vzeroupper-17.c
454 Bytes
-
constraints.md (z): New constraint. · f6449011
* config/i386/constraints.md (z): New constraint. * config/i386/i386.c (c): New mode attribute. (*call): Merge insn pattern from *call_0, *call_1, *call_1_rex64 and *call_1_rex64_large patterns using "P" mode iterator. Use "<c>zm" constraint for operand 0. (*call_vzeroupper): Ditto. (*call_rex64_ms_sysv): Ditto. Use "rzm" constraint for operand 0. (*call_rex64_ms_sysv_vzeroupper): Ditto. (*call_pop): Merge insn pattern from *call_pop_0 and *call_pop_1. Use "lzm" constraint for operand 0. (*call_pop_vzeroupper): Ditto. (*sibcall): Merge insn pattern from *sibcall_0, *sibcall_1 and *sibcall_1_rex64 patterns using "P" mode iterator. Use "Uz" constraint for operand 0. (*sibcall_vzeroupper): Ditto. (*sibcall_rex64_ms_sysv): Ditto. (*sibcall_rex64_ms_sysv_vzeroupper): Ditto. (*sibcall_pop): Merge insn pattern from *sibcall_pop_0 and *sibcall_pop_1. Use "Uz" constraint for operand 0. (*sibcall_pop_vzeroupper): Ditto. (*call_value): Merge insn pattern from *call_value_0, *call_value_1, *call_value_1_rex64 and *call_value_1_rex64_large patterns using "P" mode iterator. Use "<c>zm" constraint for operand 1. (*call_value_vzeroupper): Ditto. (*call_value_rex64_ms_sysv): Ditto. Use "rzm" constraint for operand 0. (*call_value_rex64_ms_sysv_vzeroupper): Ditto. (*call_value_pop): Merge insn pattern from *call_value_pop_0 and *call_value_pop_1. Use "lzm" constraint for operand 1. (*call_value_pop_vzeroupper): Ditto. (*sibcall_value): Merge insn pattern from *sibcall_value_0, *sibcall_value_1 and *sibcall_value_1_rex64 patterns using "P" mode iterator. Use "Uz" constraint for operand 1. (*sibcall_value_vzeroupper): Ditto. (*sibcall_value_rex64_ms_sysv): Ditto. (*sibcall_value_rex64_ms_sysv_vzeroupper): Ditto. (*sibcall_value_pop): Rename from *sibcall_pop_1. Use "Uz" constraint for operand 1. (*sibcall_value_pop_vzeroupper): Ditto. (*tls_global_dynamic_64): Use constant_call_address_operand predicate and "z" constraint for operand 2. (*tls_global_dynamic_32_gnu): Ditto. (*tls_local_dynamic_base_32_gnu): Ditto. (*tls_local_dynamic_base_64): Ditto. (*tls_local_dynamic_32_once): Ditto. * config/i386/i386.c (ix86_output_call_insn): Remove int_addr argument. Update all callers. * config/i386/i386-protos.h (ix86_output_call_insn): Update prototype. testsuite/ChangeLog: 2011-05-16 Uros Bizjak <ubizjak@gmail.com> * gcc.target/i386/avx-vzeroupper-16.c: Update scan-assembler-times scan pattern. * gcc.target/i386/avx-vzeroupper-17.c: Ditto. * gcc.target/i386/avx-vzeroupper-18.c: Ditto. From-SVN: r173797
Uros Bizjak committed