- 14 May, 2017 3 commits
-
-
gcc/ChangeLog: 2017-05-13 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * bitmap.h (class auto_bitmap): New constructor taking bitmap_obstack * argument. From-SVN: r248018
Trevor Saunders committed -
This gets rid of one allocation per bitmap. Often the bitmap_head is now on the stack, when it isn't its part of some other struct on the heap instead of being refered to by that struct. On 64 bit platforms this will increase the size of such structs by 24 bytes, but its an over all win since we don't need an 8 byte pointer pointing at the bitmap_head. Given that the auto_bitmap owns the bitmap_head anyway we know there would never be a place where two auto_bitmaps would refer to the same bitmap_head object. gcc/ChangeLog: 2017-05-13 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * bitmap.h (class auto_bitmap): Change type of m_bits to bitmap_head, and adjust ctor / dtor and member operators. From-SVN: r248017
Trevor Saunders committed -
From-SVN: r248016
GCC Administrator committed
-
- 13 May, 2017 7 commits
-
-
2017-05-09 Nicolas Koenig <koenigni@student.ethz.ch> PR fortran/80442 * array.c (gfc_ref_dimen_size): Simplify stride expression * data.c (gfc_advance_section): Simplify start, end and stride expressions (gfc_advance_section): Simplify start and end expressions (gfc_get_section_index): Simplify start expression 2017-05-09 Nicolas Koenig <koenigni@student.ethz.ch> PR fortran/80442 * gfortran.dg/impl_do_var_data.f90: New Test From-SVN: r248012
Nicolas Koenig committed -
compare-elim.c (equivalent_reg_at_start): Return NULL_RTX when returned register mode doesn't match original mode. * compare-elim.c (equivalent_reg_at_start): Return NULL_RTX when returned register mode doesn't match original mode. From-SVN: r248009
Uros Bizjak committed -
2017-05-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io.c (gfc_resolve_dt): Fix returns to bool type. From-SVN: r248008
Jerry DeLisle committed -
2017-05-12 Jeff Law <law@redhat.com> Jakub Jelinek <jakub@redhat.com> * config/mn10300/mn10300.c (mn10300_match_ccmode): Fix where we look for cc setter after the compare-elim changes. * config/mn10300/mn10300.md (addsi3_flags): Fix order of patterns within the vector to match what compare-elim now expects. (subsi3_flags, andsi3_flags, iorsi3_flags): Likewise. (xorsi3_flags, one_cmplsi2_flags): Likewise. * config/rx/rx.c (rx_match_ccmode): Fix where we look cc setter after the compare-elim changes. * config/rx/rx.md (abssi2_flags): Fix order of patterns within the vector to match what compare-elim now expects. (addsi3_flags, adc_flags, addsi3_flags peepholes): Likewise. (andsi3_flags, negsi2_flags, one_cmplsi2_flags): Likewise. (iorsi3_flags, rotlsi3_flags, rotrsi3_flags): Likewise. (ashrsi3_flags, lshrsi3_flags, ashlsi3_flags): Likewise. (ssaddsi3, subsi3_flags, sbb_flags, xorsi3_flags): Likewise. * config/visium/visium.c (single_set_and_flags): Fix where we look for cc setter after the compare-elim changes. * config/visium/visium.md (flags_subst_logic): Fix order of patterns with the vector to match what compare-elim now expects. (flags_subst_arith, add<mode>3_insn_set_carry): Likewise. (add<mode>3_insn_set_overflow, addsi3_insn_set_carry): Likewise. (addsi3_insn_set_overflow, sub<mode>3_insn_set_carry): Likewise. (sub<mode>3_insn_set_overflow, subsi3_insn_set_carry): Likewise. (subsi3_insn_set_overflow, negsi2_insn_set_carry): Likewise. (neg<mode>2_insn_set_overflow): Likewise. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r248007
Jeff Law committed -
a private array offset. From-SVN: r248006
Pekka Jääskeläinen committed -
gcc/ PR middle-end/79794 * expmed.c (extract_bit_field_1): Add alt_rtl argument. Before maybe_expand_insn call, set ops[0].target. If still set after call, set alt_rtl. Add extra arg to recursive calls. (extract_bit_field): Add alt_rtl argument. Pass to extract_bit_field. * expmed.h (extract_bit_field): Fix prototype. * expr.c (emit_group_load_1, copy_blkmode_from_reg) (copy_blkmode_to_reg, read_complex_part, store_field): Pass extra NULL to extract_bit_field_calls. (expand_expr_real_1): Pass alt_rtl to expand_expr_real instead of 0. Pass alt_rtl to extract_bit_field calls. * calls.c (store_unaligned_arguments_into_psuedos) load_register_parameters): Pass extra NULL to extract_bit_field calls. * optabs.c (maybe_legitimize_operand): Clear op->target when call gen_reg_rtx. * optabs.h (struct expand_operand): Add target bitfield. From-SVN: r248004
Jim Wilson committed -
From-SVN: r248003
GCC Administrator committed
-
- 12 May, 2017 30 commits
-
-
From-SVN: r247998
François Dumont committed -
From-SVN: r247996
Joseph Myers committed -
re PR testsuite/80643 (NA->FAIL: gcc.dg/pr79214.c gcc.dg/pr79222.c gcc.dg/pr79223.c gcc.dg/tree-ssa/builtins-folding-gimple-ub.c) gcc/testsuite/ChangeLog: PR testsuite/80643 * gfortran.dg/mvbits_7.f90: Prune diagnostic output incidental to the purpose of the test. From-SVN: r247993
Martin Sebor committed -
compare-elim.c (try_eliminate_compare): Canonicalize operation with embedded compare to [(set (reg:CCM) (compare:CCM... * compare-elim.c (try_eliminate_compare): Canonicalize operation with embedded compare to [(set (reg:CCM) (compare:CCM (operation) (immediate))) (set (reg) (operation)]. * config/i386/i386.c (TARGET_FLAGS_REGNUM): New define. From-SVN: r247992
Uros Bizjak committed -
PR target/80723 * config/i386/i386.c (ix86_rtx_cost) [case PLUS]: Ignore the cost of adding a carry flag for ADC instruction. [case MINUS]: Ignore the cost of subtracting a carry flag for SBB instruction. From-SVN: r247991
Uros Bizjak committed -
[gcc] 2017-05-12 Steven Munroe <munroesj@gcc.gnu.org> * config.gcc (powerpc*-*-*): Add bmi2intrin.h, bmiintrin.h, and x86intrin.h * config/rs6000/bmiintrin.h: New file. * config/rs6000/bmi2intrin.h: New file. * config/rs6000/x86intrin.h: New file. [gcc/testsuite] 2017-05-12 Steven Munroe <munroesj@gcc.gnu.org> * gcc.target/powerpc/bmi-andn-1.c: New file * gcc.target/powerpc/bmi-andn-2.c: New file. * gcc.target/powerpc/bmi-bextr-1.c: New file. * gcc.target/powerpc/bmi-bextr-2.c: New file. * gcc.target/powerpc/bmi-bextr-4.c: New file. * gcc.target/powerpc/bmi-bextr-5.c: New file. * gcc.target/powerpc/bmi-blsi-1.c: New file. * gcc.target/powerpc/bmi-blsi-2.c: New file. * gcc.target/powerpc/bmi-blsmsk-1.c: new file. * gcc.target/powerpc/bmi-blsmsk-2.c: New file. * gcc.target/powerpc/bmi-blsr-1.c: New file. * gcc.target/powerpc/bmi-blsr-2.c: New File. * gcc.target/powerpc/bmi-check.h: New File. * gcc.target/powerpc/bmi-tzcnt-1.c: new file. * gcc.target/powerpc/bmi-tzcnt-2.c: New file. * gcc.target/powerpc/bmi2-bzhi32-1.c: New file. * gcc.target/powerpc/bmi2-bzhi64-1.c: New file. * gcc.target/powerpc/bmi2-bzhi64-1a.c: New file. * gcc.target/powerpc/bmi2-check.h: New file. * gcc.target/powerpc/bmi2-mulx32-1.c: New file. * gcc.target/powerpc/bmi2-mulx32-2.c: New file. * gcc.target/powerpc/bmi2-mulx64-1.c: New file. * gcc.target/powerpc/bmi2-mulx64-2.c: New file. * gcc.target/powerpc/bmi2-pdep32-1.c: New file. * gcc.target/powerpc/bmi2-pdep64-1.c: New file. * gcc.target/powerpc/bmi2-pext32-1.c: New File. * gcc.target/powerpc/bmi2-pext64-1.c: New file. * gcc.target/powerpc/bmi2-pext64-1a.c: New File. From-SVN: r247988
Steven Munroe committed -
2017-05-12 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60430 * g++.dg/cpp0x/pr60430.C: New. From-SVN: r247986
Paolo Carlini committed -
* tree-vrp.c (vrp_dom_walker::before_dom_childern): Push unwinding markers. * g++.dg/tree-ssa/ssa-dom-thread-4.c: Update expected output. From-SVN: r247985
Jeff Law committed -
gcc/ PR middle-end/80707 * tree-cfg.c: Remove cfg edges of unreachable case statements. gcc/testsuite/ PR middle-end/80707 * g++.dg/pr80707.C: New test. From-SVN: r247984
Peter Bergner committed -
Pass in the calling (containing) Bfunction when invoking the Backend method call_expression(), so as to handle the case where generation of the call forces the creation of a temp var within the calling function. Reviewed-on: https://go-review.googlesource.com/43270 From-SVN: r247981
Than McIntosh committed -
* system-linux-arm.ads (Memory_Size): Use Long_Integer'Size instead of Word_Size. Revert 2017-03-28 Andreas Schwab <schwab@suse.de> PR ada/80117 * system-linux-aarch64-ilp32.ads: New file. * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS_COMMON): Rename from LIBGNAT_TARGET_PAIRS. (LIBGNAT_TARGET_PAIRS_32, LIBGNAT_TARGET_PAIRS_64): Define. (LIBGNAT_TARGET_PAIRS): Use LIBGNAT_TARGET_PAIRS_COMMON, and LIBGNAT_TARGET_PAIRS_64 or LIBGNAT_TARGET_PAIRS_32 for -mabi=lp64 or -mabi=ilp32, resp. From-SVN: r247979
Eric Botcazou committed -
[gcc] 2017-05-10 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vector divide builtins. (builtin_function_type): Add VSX_BUILTIN_UDIV_V2DI to the list of builtins identified as having unsigned arguments. [gcc/testsuite] 2017-05-10 Will Schmidt <will_schmidt@vnet.ibm.com> * gcc.target/powerpc/fold-vec-div-float.c: New. * gcc.target/powerpc/fold-vec-div-floatdouble.c: New. * gcc.target/powerpc/fold-vec-div-longlong.c: New. From-SVN: r247977
Will Schmidt committed -
[gcc] 2017-05-10 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c (gimple-fold.h): New #include. (rs6000_gimple_fold_builtin): Add handling for early GIMPLE expansion of vector logical operations (and, andc, or, xor, nor, orc, nand) [gcc/testsuite] 2017-05-10 Will Schmidt <will_schmidt@vnet.ibm.com> * gcc.target/powerpc/fold-vec-logical-ands-char.c: New. * gcc.target/powerpc/fold-vec-logical-ands-int.c: New. * gcc.target/powerpc/fold-vec-logical-ands-longlong.c: New. * gcc.target/powerpc/fold-vec-logical-ands-short.c: New. * gcc.target/powerpc/fold-vec-logical-ors-char.c: New. * gcc.target/powerpc/fold-vec-logical-ors-int.c: New. * gcc.target/powerpc/fold-vec-logical-ors-longlong.c: New. * gcc.target/powerpc/fold-vec-logical-ors-short.c: New. * gcc.target/powerpc/fold-vec-logical-other-char.c: New. * gcc.target/powerpc/fold-vec-logical-other-int.c: New. * gcc.target/powerpc/fold-vec-logical-other-longlong.c: New. * gcc.target/powerpc/fold-vec-logical-other-short.c: New. From-SVN: r247976
Will Schmidt committed -
2017-05-12 Will Schmidt <will_schmidt@vnet.ibm.com> [gcc] * gimple-fold.c (create_tmp_reg_or_ssa_name): Remove static declaration. * gimple-fold.h (create_tmp_reg_or_ssa_name): New prototype. From-SVN: r247975
Will Schmidt committed -
rs6000.c (rs6000_gimple_fold_builtin): Add handling for early GIMPLE expansion of vector multiplies. [gcc] 2017-05-12 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for early GIMPLE expansion of vector multiplies. From-SVN: r247974
Will Schmidt committed -
PR libstdc++/78939 * include/std/utility (tuple_size<cv T>): Only define partial specializations when tuple_size<T>::value is valid. * testsuite/20_util/tuple/78939.cc: New. * testsuite/20_util/tuple/cv_tuple_size_neg.cc: New. From-SVN: r247973
Jonathan Wakely committed -
From-SVN: r247972
Uros Bizjak committed -
2017-05-12 Prakhar Bahuguna <prakhar.bahuguna@arm.com> gcc/ * config/arm/arm.md (movsi): Add TARGET_32BIT in addition to the TARGET_HAVE_MOVT conditional. (movt splitter): Likewise. From-SVN: r247971
Prakhar Bahuguna committed -
re PR c++/49604 (forward-declared enum's elements in class scope gets default access (class vs struct)) 2017-05-12 Paolo Carlini <paolo.carlini@oracle.com> PR c++/49604 * g++.dg/cpp0x/forw_enum14.C: New. * g++.dg/cpp0x/forw_enum15.C: Likewise. From-SVN: r247969
Paolo Carlini committed -
Change memory allocation accounting for stacks to use stacks_sys, since that seems to be what it is for. Reviewed-on: https://go-review.googlesource.com/43297 From-SVN: r247967
Ian Lance Taylor committed -
2017-05-12 Richard Biener <rguenther@suse.de> * tree-ssa-sccvn.h (has_VN_INFO): Declare. * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Fold all stmts not inplace. * g++.dg/tree-ssa/ssa-dse-2.C: Adjust. From-SVN: r247966
Richard Biener committed -
2017-05-12 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67687 * g++.dg/cpp0x/constexpr-ice17.C: New. From-SVN: r247964
Paolo Carlini committed -
2017-05-12 Richard Biener <rguenther@suse.de> PR tree-optimization/80713 * tree-ssa-pre.c (remove_dead_inserted_code): Clear inserted_exprs bit for not removed stmts. * gcc.dg/torture/pr80713.c: New testcase. From-SVN: r247963
Richard Biener committed -
With high -j parallelism the autofdo tests can randomly fail. autofdo uses Linux perf to record profiling data. Linux perf uses a locked perf buffer. By default it has around 516k buffer per uid (/proc/sys/kernel/perf_event_mlock_kb). An individual perf record tries to grab the full 516k, which makes parallel perf record fail. This patch limits the perf buffer for individual perf record to 8k. With the default settings this allows a parallelism of the test cases of 16, which is hopefully good enough (if not would need to add some kind of semaphore, or ask the user to increase the limit as root) I also removed an unneeded -o perf.data option Thanks to Marcin to finally spotting the problem. Passes bootstrap and test on x86_64-linux. Ok for trunk? gcc/testsuite/: 2017-05-12 Andi Kleen <ak@linux.intel.com> PR testsuite/77684 * lib/target-supports.exp (profopt-perf-wrapper): Add -m8 option to increase parallelism. From-SVN: r247962
Andi Kleen committed -
gcc/c/ * c-parser.c (c_parser_omp_clause_num_gangs) (c_parser_omp_clause_num_workers) (c_parser_omp_clause_vector_length): Merge functions into... (c_parser_oacc_single_int_clause): ... this new function. Adjust all users. gcc/testsuite/ * c-c++-common/goacc/parallel-dims-1.c: New file. * c-c++-common/goacc/parallel-dims-2.c: Likewise. From-SVN: r247960
Thomas Schwinge committed -
libitm: * testsuite/lib/libitm.exp: Load scanlang.exp. libgomp: * testsuite/lib/libgomp.exp: Load scanlang.exp. libatomic: * testsuite/lib/libatomic.exp: Load scanlang.exp. From-SVN: r247959
Rainer Orth committed -
gcc/ PR middle-end/69921 * tree-parloops.c (create_parallel_loop): Set "oacc kernels parallelized" attribute for parallelized OpenACC kernels. * omp-offload.c (execute_oacc_device_lower): Use it. gcc/testsuite/ * c-c++-common/goacc/classify-kernels-unparallelized.c: Adjust. * c-c++-common/goacc/classify-kernels.c: Likewise. * c-c++-common/goacc/kernels-counter-vars-function-scope.c: Likewise. * c-c++-common/goacc/kernels-double-reduction-n.c: Likewise. * c-c++-common/goacc/kernels-double-reduction.c: Likewise. * c-c++-common/goacc/kernels-loop-2.c: Likewise. * c-c++-common/goacc/kernels-loop-3.c: Likewise. * c-c++-common/goacc/kernels-loop-g.c: Likewise. * c-c++-common/goacc/kernels-loop-mod-not-zero.c: Likewise. * c-c++-common/goacc/kernels-loop-n.c: Likewise. * c-c++-common/goacc/kernels-loop-nest.c: Likewise. * c-c++-common/goacc/kernels-loop.c: Likewise. * c-c++-common/goacc/kernels-one-counter-var.c: Likewise. * c-c++-common/goacc/kernels-reduction.c: Likewise. * gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise. * gfortran.dg/goacc/classify-kernels.f95: Likewise. * gfortran.dg/goacc/kernels-loop-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-update.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data.f95: Likewise. * gfortran.dg/goacc/kernels-loop-n.f95: Likewise. * gfortran.dg/goacc/kernels-loop.f95: Likewise. From-SVN: r247957
Thomas Schwinge committed -
gcc/ * omp-expand.c (expand_omp_target) <GF_OMP_TARGET_KIND_OACC_KERNELS>: Set "oacc kernels" attribute. * omp-general.c (oacc_set_fn_attrib): Remove is_kernel formal parameter. Adjust all users. (oacc_fn_attrib_kernels_p): Remove function. * omp-offload.c (execute_oacc_device_lower): Look for "oacc kernels" attribute instead of calling oacc_fn_attrib_kernels_p. * tree-ssa-loop.c (gate_oacc_kernels): Likewise. * tree-parloops.c (create_parallel_loop): If oacc_kernels_p, assert "oacc kernels" attribute is set. gcc/testsuite/ * c-c++-common/goacc/classify-kernels-unparallelized.c: Adjust. * c-c++-common/goacc/classify-kernels.c: Likewise. * c-c++-common/goacc/classify-parallel.c: Likewise. * c-c++-common/goacc/classify-routine.c: Likewise. * gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise. * gfortran.dg/goacc/classify-kernels.f95: Likewise. * gfortran.dg/goacc/classify-parallel.f95: Likewise. * gfortran.dg/goacc/classify-routine.f95: Likewise. From-SVN: r247955
Thomas Schwinge committed -
gcc/testsuite/ * c-c++-common/goacc/classify-kernels-unparallelized.c: New file. * c-c++-common/goacc/classify-kernels.c: Likewise. * c-c++-common/goacc/classify-parallel.c: Likewise. * c-c++-common/goacc/classify-routine.c: Likewise. * gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise. * gfortran.dg/goacc/classify-kernels.f95: Likewise. * gfortran.dg/goacc/classify-parallel.f95: Likewise. * gfortran.dg/goacc/classify-routine.f95: Likewise. From-SVN: r247953
Thomas Schwinge committed -
libgfortran/ * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime" vs. "__secure_getenv" typo. (secure_getenv): Fix "HAVE__SECURE_GETENV" vs. "HAVE___SECURE_GETENV" typo. From-SVN: r247952
Thomas Schwinge committed
-