- 04 Feb, 2016 8 commits
-
-
2016-02-04 Jim Wilson <jim.wilson@linaro.org> PR target/65932 PR target/67714 * config/arm/arm.h (PROMOTE_MODE): Don't set UNSIGNEDP for QImode and HImode. From-SVN: r233130
Jim Wilson committed -
2016-02-04 Christian Bruel <christian.bruel@st.com> * config/arm/arm-c.c (arm_reset_previous_fndecl): Style fix and typo. * config/arm/arm.c (arm_set_current_function): Likewise. From-SVN: r233129
Christian Bruel committed -
PR target/69454 * config/i386/i386.c (convert_scalars_to_vector): Remove stack alignment fixes. (ix86_option_override_internal): Disable TARGET_STV if stack might not be aligned enough. (ix86_minimum_alignment): Assert that TARGET_STV is false. * gcc.target/i386/pr69454-1.c: New test. * gcc.target/i386/pr69454-2.c: New test. From-SVN: r233128
Jakub Jelinek committed -
2016-02-04 Victoria Stepanyan <victoria.stepanyan@amd.com> * gcc/config/i386/x86-tune.def: Disable default prefetching for -march=znver1. From-SVN: r233127
Victoria Stepanyan committed -
PR c++/69251 - [6 Regression] ICE in unify_array_domain on a flexible array member PR c++/69253 - [6 Regression] ICE in cxx_incomplete_type_diagnostic initializing a flexible array member with empty string PR c++/69290 - [6 Regression] ICE on invalid initialization of a flexible array member PR c++/69277 - [6 Regression] ICE mangling a flexible array member PR c++/69349 - template substitution error for flexible array members gcc/testsuite/ChangeLog: 2016-02-03 Martin Sebor <msebor@redhat.com> PR c++/69251 PR c++/69253 PR c++/69290 PR c++/69277 PR c++/69349 * g++.dg/ext/flexarray-mangle-2.C: New test. * g++.dg/ext/flexarray-mangle.C: New test. * g++.dg/ext/flexarray-subst.C: New test. * g++.dg/ext/flexary11.C: New test. * g++.dg/ext/flexary12.C: New test. * g++.dg/ext/flexary13.C: New test. * g++.dg/ext/flexary14.C: New test. * g++.dg/other/dump-ada-spec-2.C: Adjust. gcc/cp/ChangeLog: 2016-02-03 Martain Sebor <msebor@redhat.com> PR c++/69251 PR c++/69253 PR c++/69290 PR c++/69277 PR c++/69349 * class.c (walk_subobject_offsets): Avoid testing the upper bound of a flexible array member for equality to null. (find_flexarrays): Remove spurious whitespace introduced in r231665. (diagnose_flexarrays): Avoid checking the upper bound of arrays. (check_flexarrays): Same. * decl.c (compute_array_index_type): Avoid special case for flexible array members. (grokdeclarator): Avoid calling compute_array_index_type for flexible array members. * error.c (dump_type_suffix): Revert changes introduced in r231665 and rendered unnecessary by the changes above. * pt.c (tsubst): Same. * tree.c (build_ctor_subob_ref): Handle flexible array members. * typeck2.c (digest_init_r): Revert changes introduced in r231665. (process_init_constructor_array): Same. (process_init_constructor_record): Same. From-SVN: r233126
Martin Sebor committed -
* gcc.target/i386/iamcu/test_passing_unions.c (check_union_passing6): Define only if CHECK_FLOAT128 is defined. (main): Properly initialize u5. From-SVN: r233124
H.J. Lu committed -
2016-02-03 Michael Meissner <meissner@linux.vnet.ibm.com> Vladimir Makarov <vmakarov@redhat.com> PR target/69461 * config/rs6000/rs6000.c (rs6000_legitimate_address_p): Fix thinko in validating fused toc addresses. Co-Authored-By: Vladimir Makarov <vmakarov@redhat.com> From-SVN: r233120
Michael Meissner committed -
From-SVN: r233119
GCC Administrator committed
-
- 03 Feb, 2016 16 commits
-
-
re PR c/69627 (Conditional jump or move depends on uninitialised value(s) in (anonymous namespace)::layout::get_state_at_point) PR c/69627 * diagnostic-show-locus.c (layout::get_state_at_point): Don't read range->m_caret fields if range->m_show_caret_p is false. * gcc.dg/pr69627.c: New test. From-SVN: r233114
Jakub Jelinek committed -
re PR target/69644 (ICE with -O on __sync_bool_compare_and_swap with short in extract_insn, at recog.c:2286) PR target/69644 * config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): Force oldval into register if it does not satisfy reg_or_short_operand predicate. Fix up formatting. * gcc.dg/pr69644.c: New test. From-SVN: r233113
Jakub Jelinek committed -
* lib/compat.exp (compat-get-options-main): Add dg-timeout-factor support for struct-layout-1.exp. From-SVN: r233112
Mike Stump committed -
2016-02-03 Andreas Tobler <andreast@gcc.gnu.org> PR bootstrap/69611 * config/rs6000/sfp-machine.h: Guard __sfp_exceptions with __FLOAT128__ to compile only for __float128 capable targets. From-SVN: r233111
Andreas Tobler committed -
Reviewed-on: https://go-review.googlesource.com/19200 From-SVN: r233110
Ian Lance Taylor committed -
From-SVN: r233109
H.J. Lu committed -
gcc/cp/ChangeLog: PR c++/69056 * pt.c (try_one_overload): Handle comparing argument packs so that there is no conflict if we deduced more arguments of an argument pack than were explicitly specified. gcc/testsuite/ChangeLog: PR c++/69056 g++.dg/cpp0x/pr69056.C: New test. From-SVN: r233108
Patrick Palka committed -
2016-02-03 Vladimir Makarov <vmakarov@redhat.com> Alexandre Oliva <aoliva@redhat.com> PR target/69461 * lra-constraints.c (simplify_operand_subreg): Check additionally address validity after potential reloading. (process_address_1): Check insns validity. In case of failure do nothing. 2016-02-03 Vladimir Makarov <vmakarov@redhat.com> Alexandre Oliva <aoliva@redhat.com> PR target/69461 * gcc.target/powerpc/pr69461.c: New. Co-Authored-By: Alexandre Oliva <aoliva@redhat.com> From-SVN: r233107
Vladimir Makarov committed -
* lib/tsan-dg.exp (tsan_init): Move check if tsan executable works from here ... (check_effective_target_fsanitize_thread): ... to here. Do not specify additional compile flags for the test source. * lib/asan-dg.exp (check_effective_target_fsanitize_address): Do not specify additional compile flags for the test source. From-SVN: r233106
Uros Bizjak committed -
PR target/69118 gcc/ * config/i386/sse.md (define_insn "avx512f_maskcmp<mode>3"): Fix target. From-SVN: r233103
Kirill Yukhin committed -
Fix the ccmp_1.c test back to use '0' as regular expressions don't work correctly. '0' is right due to compare with zero now printing as 'CMP w0, 0' rather than 'CMP w0, wzr'. 2016-02-03 Wilco Dijkstra <wdijkstr@arm.com> gcc/testsuite/ * gcc.target/aarch64/ccmp_1.c: Fix test issue. From-SVN: r233102
Wilco Dijkstra committed -
gcc/testsuite/ChangeLog: 2016-02-03 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/67451 PR fortran/69418 * gfortran.dg/coarray_allocate_2.f08: New test. * gfortran.dg/coarray_allocate_3.f08: New test. * gfortran.dg/coarray_allocate_4.f08: New test. gcc/fortran/ChangeLog: 2016-02-03 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/67451 PR fortran/69418 * trans-expr.c (gfc_copy_class_to_class): For coarrays just the pointer is passed. Take it as is without trying to deref the _data component. * trans-stmt.c (gfc_trans_allocate): Take care of coarrays as argument to source=-expression. From-SVN: r233101
Andre Vehreschild committed -
* gcc.dg/vect/vect-outer-1-big-array.c: Drop vect_multiple_sizes; use same scan-tree-dump-times on all platforms. * gcc.dg/vect/vect-outer-1.c: Likewise. * gcc.dg/vect/vect-outer-1a-big-array.c: Likewise. * gcc.dg/vect/vect-outer-1a.c: Likewise. * gcc.dg/vect/vect-outer-1b-big-array.c: Likewise. * gcc.dg/vect/vect-outer-1b.c: Likewise. * gcc.dg/vect/vect-outer-2b.c: Likewise. * gcc.dg/vect/vect-outer-3b.c: Likewise. * gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise. From-SVN: r233100
Alan Lawrence committed -
This fixes the long-standing bug in which the testing package misreports the file/line of an error. Reviewed-on: https://go-review.googlesource.com/19179 From-SVN: r233098
Ian Lance Taylor committed -
Reviewed-on: https://go-review.googlesource.com/19177 From-SVN: r233097
Ian Lance Taylor committed -
From-SVN: r233096
GCC Administrator committed
-
- 02 Feb, 2016 16 commits
-
-
vector-compare-4.c This testcase fails on 32-bit powerpc-linux with Excess errors: /home/segher/src/gcc/gcc/testsuite/c-c++-common/vector-compare-4.c:31:1: warning: GCC vector returned by reference: non-standard ABI extension with no compatibility guarantee Fix this as in vector-compare-2.c . testsuite/ * c-c++-common/vector-compare-4.c: Prune "non-standard ABI extension" warning. From-SVN: r233093
Segher Boessenkool committed -
* wide-int.cc (canonize_uhwi): New function. (wi::divmod_internal): Use it. From-SVN: r233092
Jakub Jelinek committed -
* gcc.target/i386/iamcu/test_empty_structs_and_unions.c: New test. From-SVN: r233090
H.J. Lu committed -
gcc/ * gimplify.c (omp_notice_variable): Add usage check. gcc/testsuite/ * c-c++-common/goacc/routine-5.c: Add tests. From-SVN: r233089
James Norris committed -
gcc/ChangeLog: * config/nvptx/nvptx.c (nvptx_print_operand): Treat LEU, GEU, LTU, GTU like LE, GE, LT, GT when emitting relational operator. gcc/testsuite/ChangeLog: * gcc.target/nvptx/unsigned-cmp.c: New test. From-SVN: r233088
Alexander Monakov committed -
* testsuite/libgomp.c/target-31.c: Fix testcase. From-SVN: r233087
Alexander Monakov committed -
* testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction clause. * testsuite/libgomp.c/examples-4/teams-4.c: Likewise. * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing reduction and map clauses. * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise. From-SVN: r233086
Alexander Monakov committed -
Improve TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS target hook. It turns out there is another case where the register allocator uses the union of register classes without checking that the cost of the resulting register class is lower than both (see https://gcc.gnu.org/ml/gcc-patches/2015-12/msg01765.html ). This happens when the cost of the best and alternative class are both lower than the memory cost. In this case we typically end up with ALL_REGS as the allocno class, which almost invariably results in bad allocations with many redundant int<->FP moves (which are expensive on various cores). AArch64 is affected by this significantly due to supporting many scalar integer operations in SIMD. Currently the TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook forces the class to GENERAL_REGS if the allocno class is ALL_REGS and the register has an integer mode. This is bad if the best class happens to be FP_REGS. To handle this case as well, an extra argument is needed in the hook to pass the best class. If the allocno class is ALL_REGS, but the best class isn't, we use the best class instead (rather than using the mode to force to GENERAL_REGS or FP_REGS). Previously this might happen: r79: preferred FP_REGS, alternative GENERAL_REGS, allocno GENERAL_REGS a1 (r79,l0) best GENERAL_REGS, allocno GENERAL_REGS a1(r79,l0) costs: CALLER_SAVE_REGS:5000,5000 GENERAL_REGS:5000,5000 FP_LO_REGS:0,0 FP_REGS:0,0 ALL_REGS:10000,10000 MEM:9000,9000 The proposed allocno is ALL_REGS (despite having the highest cost!) and is then forced by the hook to GENERAL_REGS because r79 has integer mode. However FP_REGS has the lowest cost. After this patch the choice is as follows: r79: preferred FP_REGS, alternative GENERAL_REGS, allocno FP_REGS a1 (r79,l0) best FP_REGS, allocno FP_REGS As a result it is now no longer a requirement to use register move costs that are larger than the memory move cost. So it will be feasible to use realistic costs for both without a huge penalty. 2016-02-02 Wilco Dijkstra <wdijkstr@arm.com> gcc/ * ira-costs.c (find_costs_and_classes): Add extra argument. * target.def (ira_change_pseudo_allocno_class): Add parameter. * targhooks.h (ira_change_pseudo_allocno_class): Likewise. * targhooks.c (ira_change_pseudo_allocno_class): Likewise. * config/aarch64/aarch64.c (aarch64_ira_change_pseudo_allocno_class) Add best_class parameter, and return it if not ALL_REGS. * config/mips/mips.c (mips_ira_change_pseudo_allocno_class): Add parameter. * doc/tm.texi (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Update target hook. From-SVN: r233084
Wilco Dijkstra committed -
When the cost of GENERAL_REGS and FP_REGS is identical, the register allocator always uses ALL_REGS even when it has a much higher cost. The hook changes the class to either FP_REGS or GENERAL_REGS depending on the mode of the register. This results in better register allocation overall, fewer spills and reduced codesize - particularly in SPEC2006 gamess. 2016-02-02 Wilco Dijkstra <wdijkstr@arm.com> gcc/ * config/aarch64/aarch64.c (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): New define. (aarch64_ira_change_pseudo_allocno_class): New function. gcc/testsuite/ * gcc.target/aarch64/scalar_shift_1.c (test_corners_sisd_di): Improve force to SIMD register. (test_corners_sisd_si): Likewise. * gcc.target/aarch64/vect-ld1r-compile-fp.c: Remove scan-assembler check for ldr. From-SVN: r233083
Wilco Dijkstra committed -
From-SVN: r233082
James Norris committed -
PR target/67032 * config/i386/i386.c (geode_cost): Increase cost of MMX and SSE moves. From-SVN: r233079
Uros Bizjak committed -
* config/avr/avr.c (avr_option_override): Set PARAM_ALLOW_STORE_DATA_RACES to 1. From-SVN: r233078
Senthil Kumar Selvaraj committed -
2016-02-02 Claudiu Zissulescu <claziss@synopsys.com> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r233077
Claudiu Zissulescu committed -
2016-02-02 Richard Biener <rguenther@suse.de> PR tree-optimization/69595 * match.pd: Add range test simplifications to true/false. * gcc.dg/Warray-bounds-17.c: New testcase. From-SVN: r233076
Richard Biener committed -
gcc/ * omp-builtins.def (BUILT_IN_GOACC_HOST_DATA): Remove. * omp-low.c (expand_omp_target): Use BUILT_IN_GOACC_DATA_START instead. libgomp/ * libgomp.map (GOACC_2.0): Remove GOACC_host_data. * oacc-parallel.c (GOACC_host_data): Remove function definition. From-SVN: r233074
Thomas Schwinge committed -
libgomp/ * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test cases. From-SVN: r233073
Thomas Schwinge committed
-