From: uros Date: Tue, 5 Apr 2016 16:26:40 +0000 (+0000) Subject: PR target/70510 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=305d86a09010369824049f34c51656bace583298;p=thirdparty%2Fgcc.git PR target/70510 * config/i386/sse.md (iptr): Add V64QI, V32HI, V16SI and V8DI modes. testsuite/ChangeLog: PR target/70510 * gcc.target/i386/pr70510.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234752 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b7fc0cd9d065..711f6ed0510b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-04-05 Uros Bizjak + + PR target/70510 + * config/i386/sse.md (iptr): Add V64QI, V32HI, V16SI and V8DI modes. + 2016-04-05 Richard Biener PR tree-optimization/70526 @@ -82,8 +87,7 @@ PR hsa/70402 * hsa-gen.c (gen_hsa_insns_for_switch_stmt): Guard index value that is really in range handled by SBR instruction. - * hsa-brig.c (emit_switch_insn): Do not emit unconditional - jump. + * hsa-brig.c (emit_switch_insn): Do not emit unconditional jump. * hsa-dump.c (dump_hsa_insn_1): Do not dump default BB. * hsa.h (hsa_insn_sbr::m_default_bb): Remove field. @@ -126,8 +130,7 @@ 2016-04-01 Ramana Radhakrishnan PR target/70496 - * config/arm/arm.h (ASM_APP_OFF): Handle TARGET_ARM - and TARGET_THUMB. + * config/arm/arm.h (ASM_APP_OFF): Handle TARGET_ARM and TARGET_THUMB. 2016-04-01 Nathan Sidwell @@ -174,8 +177,7 @@ (pass_gen_hsail::execute): Do not call convert_switch_statements here. * hsa-regalloc.c (hsa_regalloc): Call update_dominance. - * hsa.h (hsa_function_representation::m_modified_cfg): - New flag. + * hsa.h (hsa_function_representation::m_modified_cfg): New flag. (hsa_function_representation::update_dominance): New function. 2016-03-31 Martin Liska @@ -183,23 +185,19 @@ PR hsa/70391 * hsa-brig.c (emit_directive_variable): Emit alignment according to hsa_symbol::m_align. - * hsa-dump.c (hsa_byte_alignment): Move the function to - another file. + * hsa-dump.c (hsa_byte_alignment): Move the function to another file. (dump_hsa_symbol): Dump alignment of HSA symbols. - * hsa-gen.c (get_symbol_for_decl): Set-up alignment - of a symbol. + * hsa-gen.c (get_symbol_for_decl): Set-up alignment of a symbol. (gen_hsa_addr_with_align): New function. (hsa_bitmemref_alignment): Use newly added function. (gen_hsa_insns_for_load): Likewise. (gen_hsa_insns_for_store): Likewise. (gen_hsa_memory_copy): New argument added. (gen_hsa_insns_for_single_assignment): Respect - alignment for assignments processed via - gen_hsa_memory_copy. + alignment for assignments processed via gen_hsa_memory_copy. (gen_hsa_insns_for_direct_call): Likewise. (gen_hsa_insns_for_return): Likewise. - (gen_function_def_parameters): Set default - alignment. + (gen_function_def_parameters): Set default alignment. * hsa.c (hsa_object_alignment): New function. (hsa_byte_alignment): Pasted function. * hsa.h (hsa_symbol::m_align): New field. @@ -216,16 +214,15 @@ 2016-03-31 Ilya Enkovich PR target/70442 - * config/i386/i386.c (scalar_chain::convert_op): Fix - description. + * config/i386/i386.c (scalar_chain::convert_op): Fix description. (scalar_chain::convert_insn): Call convert_op for reg moves to handle undefined registers. 2016-03-31 Nathan Sidwell PR c++/70393 - * varasm.c (output_constructor_regular_field): Flush bitfield - earlier. Assert we don't want to move backwards. + * varasm.c (output_constructor_regular_field): Flush bitfield earlier. + Assert we don't want to move backwards. 2016-03-31 Kirill Yukhin @@ -266,8 +263,7 @@ 2016-03-30 Richard Biener PR middle-end/70450 - * fold-const.c (extract_muldiv_1): Fix thinko in wide_int::from - usage. + * fold-const.c (extract_muldiv_1): Fix thinko in wide_int::from usage. 2016-03-30 Jakub Jelinek @@ -314,8 +310,7 @@ 2016-03-29 Jeff Law - * tree-ssa-coalesce.c (struct ssa_conflicts): Fix typo in - comment. + * tree-ssa-coalesce.c (struct ssa_conflicts): Fix typo in comment. 2016-03-10 Jan Hubicka @@ -347,8 +342,7 @@ mode != result_mode. PR c++/70353 - * tree-inline.c (remap_decls): Don't add_local_decl if - cfun is null. + * tree-inline.c (remap_decls): Don't add_local_decl if cfun is null. PR tree-optimization/70405 * ssa-iterators.h (num_imm_uses): Add missing braces. @@ -362,8 +356,7 @@ 2016-03-29 Richard Henderson PR middle-end/70355 - * lower-subreg.c (simplify_subreg_concatn): Reject paradoxical - subregs. + * lower-subreg.c (simplify_subreg_concatn): Reject paradoxical subregs. 2016-03-29 Richard Biener @@ -377,17 +370,16 @@ 2016-03-28 James Bowman * config/ft32/ft32.opt (mnodiv): New. - * config/ft32/ft32.md (*divsi3, *modsi3): Qualify with - TARGET_NODIV. + * config/ft32/ft32.md (*divsi3, *modsi3): Qualify with TARGET_NODIV. * doc/invoke.texi (FT32 Options -mnodiv): New. 2016-03-28 Kirill Yukhin - PR target/70406 - * config/i386/i386.md (define_split, andn): Fix modes. + PR target/70406 + * config/i386/i386.md (define_split, andn): Fix modes. 2016-03-26 Richard Biener - Prathamesh Kulkarni + Prathamesh Kulkarni PR ipa/70366 * ipa-inline-transform.c (inline_call): Pass opts_for_fn (to->decl) @@ -430,7 +422,7 @@ 2016-03-24 Richard Henderson - PR middle-end/69845 + PR middle-end/69845 * fold-const.c (extract_muldiv_1): Correct test for multiplication overflow. diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 8e9d5ec7cd9e..55f1ae732e4b 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -705,7 +705,8 @@ ;; Pointer size override for scalar modes (Intel asm dialect) (define_mode_attr iptr - [(V32QI "b") (V16HI "w") (V8SI "k") (V4DI "q") + [(V64QI "b") (V32HI "w") (V16SI "k") (V8DI "q") + (V32QI "b") (V16HI "w") (V8SI "k") (V4DI "q") (V16QI "b") (V8HI "w") (V4SI "k") (V2DI "q") (V8SF "k") (V4DF "q") (V4SF "k") (V2DF "q") diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fcb5222a1edc..7012de5007bd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2016-04-05 Uros Bizjak + + PR target/70510 + * gcc.target/i386/pr70510.c: New test. + 2016-04-05 Richard Biener PR tree-optimization/70526 @@ -195,8 +200,7 @@ Tom de Vries Nathan Sidwell - * c-c++-common/goacc/combined-directives.c: Clean up dg-* - directives. + * c-c++-common/goacc/combined-directives.c: Clean up dg-* directives. * c-c++-common/goacc/loop-clauses.c: Likewise. * g++.dg/goacc/template.C: Likewise. * gfortran.dg/goacc/combined-directives.f90: Likewise. @@ -290,12 +294,12 @@ 2016-03-28 Dominique d'Humieres - g++.dg/ext/fnname5.C: Update the test for Darwin. + * g++.dg/ext/fnname5.C: Update the test for Darwin. 2016-03-28 Kirill Yukhin PR target/70406 - * gcc.target/i386/pr70406.c: New test. + * gcc.target/i386/pr70406.c: New test. 2016-03-27 Eric Botcazou @@ -376,7 +380,8 @@ 2016-03-24 Jakub Jelinek PR target/70290 - * g++.dg/ext/pr70290.C: Add -Wno-psabi -w to dg-options. Formatting. + * g++.dg/ext/pr70290.C: Add -Wno-psabi -w to dg-options. + Fix formatting. 2016-03-24 Richard Biener diff --git a/gcc/testsuite/gcc.target/i386/pr70510.c b/gcc/testsuite/gcc.target/i386/pr70510.c new file mode 100644 index 000000000000..fdad97a16f41 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr70510.c @@ -0,0 +1,14 @@ +/* PR target/70510 */ +/* { dg-do assemble { target avx512bw } } */ +/* { dg-require-effective-target masm_intel } */ +/* { dg-options "-Og -mavx512bw -masm=intel" } */ + +typedef int V __attribute__ ((vector_size (64))); + +V +foo (V u, V v) +{ + v[0] |= v[u[0]]; + u /= ((V)v)[0]; + return u; +}