- 24 Nov, 2015 1 commit
-
-
From-SVN: r230780
David Edelsohn committed
-
- 23 Nov, 2015 29 commits
-
-
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230778
Aditya Kumar committed -
PR go/68496 reflect: Allocate space for FFI functions returning a zero-sized type. The libffi library does not understand zero-sized types. We represent them as a struct with a single field of type void. If such a type is returned from a function, libffi will copy 1 byte of data. Allocate space for that byte, although we won't use it. Fixes https://gcc.gnu.org/PR68496. Reviewed-on: https://go-review.googlesource.com/17175 From-SVN: r230776
Ian Lance Taylor committed -
gcc/c/ChangeLog: PR objc/68438 * c-parser.c (c_parser_postfix_expression): Set up source ranges for various Objective-C constructs: Class.name syntax, @selector(), @protocol(), @encode(), and [] message syntax. gcc/testsuite/ChangeLog: PR objc/68438 * objc.dg/plugin: New subdirectory. * objc.dg/plugin/diagnostic-test-expressions-1.m: New test file. * objc.dg/plugin/plugin.exp: New file, based on gcc.dg/plugin/plugin.exp. From-SVN: r230775
David Malcolm committed -
* Imported zlib 1.2.8; merged local changes. From-SVN: r230774
Matthias Klose committed -
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230772
Aditya Kumar committed -
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230771
Aditya Kumar committed -
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230770
Aditya Kumar committed -
re PR tree-optimization/68455 (ICE: tree check: expected integer_cst, have plus_expr in decompose, at tree.h:5123) PR tree-optimization/68455 * tree-vrp.c (extract_range_from_binary_expr_1): Don't call extract_range_from_multiplicative_op_1 on symbolic ranges. * gcc.dg/tree-ssa/pr68455.c: New test. From-SVN: r230768
Marek Polacek committed -
PR target/67089 * optabs.def (uaddv4_optab, usubv4_optab): New. * internal-fn.c (expand_addsub_overflow): Use uaddv4_optab and usubv4_optab in the u +- u -> u case. * doc/md.texi (Standard Names): Document addv{m}4, subv{m}4, mulv{m}4, uaddv{m}4, usubv{m}4, umulv{m}4. * config/i386/i386.md (uaddv<SWI>4, usubv<SWI>4): New. From-SVN: r230767
Richard Henderson committed -
2015-11-23 Richard Biener <rguenther@suse.de> PR tree-optimization/68465 * tree-ssa-sccvn.c (sccvn_dom_walker::before_dom_children): Also record equalities from multiple predecessor blocks if only one non-backedge exists. * gcc.dg/tree-ssa/ssa-fre-52.c: New testcase. From-SVN: r230764
Richard Biener committed -
libgcc/ PR target/68059 * config/arm/linux-atomic-64bit.c (__write): Rename to... (write): ...this and fix the return type. From-SVN: r230762
Szabolcs Nagy committed -
PR target/68363 * config/aarch64/aarch64.c (aarch64_madd_needs_nop): Reject arguments that are not INSN_P. * gcc.target/aarch64/pr68363_1.c: New test. From-SVN: r230760
Kyrylo Tkachov committed -
* system.h: Don't poison calloc and strdup if USES_ISL is defined. * graphite-dependences.c: Define USES_ISL. Include ISL header files after GCC header files and before graphite header files. * graphite-dependences.c: Same. * graphite-isl-ast-to-gimple.c: Same. * graphite-optimize-isl.c: Same. * graphite-poly.c: Same. * graphite-scop-detection.c: Same. * graphite-sese-to-poly.c: Same. * graphite.c: Same. From-SVN: r230759
David Edelsohn committed -
gcc/ * config/aarch64/aarch64-builtins.c (aarch64_gimple_fold_builtin): Added constant folding. gcc/testsuite/ * gcc.target/aarch64/simd/vmulx.x: New. * gcc.target/aarch64/simd/vmulx_f64_2.c: Likewise. * gcc.target/aarch64/simd/vmulxd_f64_2.c: Likewise. * gcc.target/aarch64/simd/vmulxs_f32_2.c: Likewise. From-SVN: r230758
Bilyan Borisov committed -
PR c++/68001 gcc/c-family PR c++/68001 * c-gimplify.c (c_gimplify_expr): Stop the process if see an error. * cilk.c (recognize_spawn): Determine location in a more precise way. gcc/cp * cp-gimplify.c (cp_gimplify_expr): Stop the process if see an error. gcc/testsuite * g++.dg/cilk-plus/CK/pr68001.cc: New test. From-SVN: r230755
Igor Zamyatin committed -
2015-11-23 Richard Biener <rguenth@gcc.gnu.com> Jiong Wang <jiong.wang@arm.com> gcc/ PR tree-optimization/68317 PR tree-optimization/68326 * tree-vrp.c (adjust_range_with_scev): Call drop_tree_overflow if the final min and max are not infinity. gcc/testsuite/ * gcc.dg/pr68317.c: New testcase. From-SVN: r230754
Jiong Wang committed -
2015-11-23 Olivier Hainque <hainque@adacore.com> * system-aix.ads: Add Frontend_Exceptions flag. * system-aix64.ads: Likewise. * system-darwin-ppc.ads: Likewise. * system-darwin-ppc64.ads: Likewise. * system-darwin-x86.ads: Likewise. * system-darwin-x86_64.ads: Likewise. * system-dragonfly-x86_64.ads: Likewise. * system-freebsd-x86.ads: Likewise. * system-freebsd-x86_64.ads: Likewise. * system-hpux-ia64.ads: Likewise. * system-hpux.ads: Likewise. * system-linux-alpha.ads: Likewise. * system-linux-armeb.ads: Likewise. * system-linux-armel.ads: Likewise. * system-linux-hppa.ads: Likewise. * system-linux-ia64.ads: Likewise. * system-linux-mips.ads: Likewise. * system-linux-mips64el.ads: Likewise. * system-linux-mipsel.ads: Likewise. * system-linux-ppc.ads: Likewise. * system-linux-ppc64.ads: Likewise. * system-linux-s390.ads: Likewise. * system-linux-s390x.ads: Likewise. * system-linux-sh4.ads: Likewise. * system-linux-sparc.ads: Likewise. * system-linux-sparcv9.ads: Likewise. * system-linux-x86.ads: Likewise. * system-linux-x86_64.ads: Likewise. * system-mingw-x86_64.ads: Likewise. * system-mingw.ads: Likewise. * system-rtems.ads: Likewise. * system-solaris-sparc.ads: Likewise. * system-solaris-sparcv9.ads: Likewise. * system-solaris-x86.ads: Likewise. * system-solaris-x86_64.ads: Likewise. * system-vxworks-arm.ads: Likewise. * system-vxworks-m68k.ads: Likewise. * system-vxworks-mips.ads: Likewise. * system-vxworks-ppc.ads: Likewise. * system-vxworks-sparcv9.ads: Likewise. * system-vxworks-x86.ads: Likewise. * system.ads: Likewise. From-SVN: r230753
Olivier Hainque committed -
2015-11-23 Olivier Hainque <hainque@adacore.com> Eric Botcazou <botcazou@adacore.com> * opt.ads (Exception_Mechanism): Now three values: Front_End_SJLJ, Back_End_SJLJ and Back_End_ZCX. (Back_End_Exceptions, Front_End_Exceptions, ZCX_Exceptions, SJLJ_Exceptions): New functions, reflecting properties of the current Exception_Mechanism. * opt.adb: Implement the new functions. * fe.h: Bind the new Exception_Mechanism and helper functions for gigi. * exp_ch11.adb (Expand_At_End_Handler): Replace test on mechanism by use of property helper and update comments. (Expand_Exception_Handlers): Replace tests on mechanism by use of helper. Restrict Abort_Defer to ZCX specifically. * exp_ch9.adb (Expand_N_Asynchronous_Select): Replace tests on mechanism by calls to helper functions. Abort_Undefer for ZCX only, paired with Expand_Exception_Handlers. * exp_sel.adb (Build_Abort_Block_Handler): Replace tests on mechanism by calls to helper functions. Abort_Undefer for ZCX only, paired with Expand_Exception_Handlers. * lib-writ.ads (P line documentation): Add entry for "FX", representative of unit compiled with Frontend_Exceptions True. * lib-writ.adb (Output_Main_Program_Line): Add "FX" on P line if compiled with Frontend_Exceptions True. * ali.ads (ALIs_Record): Ada a Frontend_Exceptions component, to reflect whether the ALI file contained an "FX" indication on the P line. (Frontend_Exceptions_Specified): New boolean, to keep track of whether at least an FX ALI file is in the closure. * ali.adb (Scan_ALI): Handle "FX" on the P line. (Initialize_ALI): Initialize Frontend_Exceptions_Specified to False. * targparm.ads: Update desription of exception schemes. (Frontend_Exceptions_On_Target): New flag, reflect Frontend_Exceptions set to True in system.ads, or not set at all. * targparm.adb (Targparm_Tags): Add FEX to convey Frontend_Exceptions. Rename ZCD to ZCX for consistency. (FEX_Str, Targparm_Str, Get_Target_Parameters): Adjust accordingly. * gnat1drv.adb (Adjust_Global_Switches): Adjust Exception_Mechanism setting, now from combination of Frontend_Exceptions and ZCX_By_Default. * bcheck.adb (Check_Consistent_Zero_Cost_Exception_Handling): Rename as ... (Check_Consistent_Exception_Handling): Check consistency of both ZCX_By_Default and Frontend_Exceptions. (Check_Configuration_Consistency): Check_Consistent_Exception_Handling if either flag was set at least once. * make.adb (Check): Remove processing of a possible -fsjlj coming from lang-specs.h. * gnatlink.adb (Gnatlin): Likewise. * gcc-interface/Makefile.in (gnatlib-sjlj/zcx): Now set both ZCX_By_Default and Frontend_Exceptions. * gcc-interface/decl.c (gnat_to_gnu_entity, case E_Variable): Use eh property helper to test for back-end exceptions. Adjust mechanism name when testing for front-end sjlj. (case E_Procedure): Likewise. * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Likewise, and rename local variables. (Exception_Handler_to_gnu_sjlj): Rename as Exception_Handler_to_gnu_fe_sjlj. (Exception_Handler_to_gnu_zcx): Rename as Exception_Handler_to_gnu_gcc and adjust tests on eh mechanisms to use property helpers or correct mechanism name. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> From-SVN: r230752
Olivier Hainque committed -
From-SVN: r230750
Joseph Myers committed -
re PR tree-optimization/68327 (ICE on valid code at -O3 on x86_64-linux-gnu in vect_is_simple_use, at tree-vect-stmts.c:8562) gcc/ PR tree-optimization/68327 * tree-vect-loop.c (vect_determine_vectorization_factor): Don't compute vectype for non-relevant mask producers. * gcc/tree-vect-stmts.c (vectorizable_comparison): Check stmt relevance earlier. gcc/testsuite/ PR tree-optimization/68327 * gcc.dg/pr68327.c: New test. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r230743
Ilya Enkovich committed -
2015-11-23 Tom de Vries <tom@codesourcery.com> PR tree-optimization/68460 * tree-parloops.c (gather_scalar_reductions): Also call free_stmt_vec_info_vec if simple_loop_info == NULL. * gcc.dg/autopar/pr68460.c: New test. From-SVN: r230742
Tom de Vries committed -
gcc/ * opts.c (finish_options): Allow -fsanitize-recover=address for userspace sanitization. * asan.c (asan_expand_check_ifn): Redefine recover_p. * doc/invoke.texi (fsanitize-recover): Update documentation. gcc/testsuite/ * c-c++-common/asan/halt_on_error-1.c: New test. * c-c++-common/asan/halt_on_error-2.c: Likewise. From-SVN: r230741
Max Ostapenko committed -
2015-11-23 Richard Biener <rguenther@suse.de> PR tree-optimization/68482 * gcc.dg/vect/pr68482.c: New testcase. From-SVN: r230740
Richard Biener committed -
libsanitizer/ 2015-11-23 Maxim Ostapenko <m.ostapenko@partner.samsung.com> * All source files: Merge from upstream r253555. * configure.tgt: Enable LSan on aarch64-*-linux* targets. Add new dependences for TSan for aarch64-*-linux* targets. * tsan/Makefile.am: Add new source files. * configure: Regenerate. * tsan/Makefile.in: Likewise. From-SVN: r230739
Max Ostapenko committed -
2015-11-23 Tom de Vries <tom@codesourcery.com> * omp-low.c (build_receiver_ref): Mark by_ref mem_ref as non-trapping. From-SVN: r230738
Tom de Vries committed -
2015-11-23 Richard Biener <rguenther@suse.de> PR tree-optimization/68445 * tree-vect-slp.c (vect_create_mask_and_perm): Properly use two different strides. * gcc.dg/vect/pr68445.c: New testcase. From-SVN: r230737
Richard Biener committed -
This patch fixes the treatment of symbol ref alignments for arrays and structs in S390. Until now, the NOT_NATURALLY_ALIGNED flag was not correctly set for array elements and structs larger than 8 bytes. Therefore, load relative instructions that require a specific alignment would not always be generated. This patch uses separate flags for 2-, 4-, and 8-byte alignment to fix the problem. gcc/testsuite/ChangeLog: 2015-11-23 Robin Dapp <rdapp@linux.vnet.ibm.com> * gcc.target/s390/load-relative-check.c: New test to check generation of load relative instructions. gcc/ChangeLog: 2015-11-23 Robin Dapp <rdapp@linux.vnet.ibm.com> * config/s390/s390.h: Add new symref flags, _NOTALIGN2 etc. * config/s390/s390.c (s390_check_symref_alignment): Use new symref flags, early abort on wrong alignment (s390_secondary_reload): Use new symref flags. (s390_encode_section_info): Likewise. * config/s390/predicates.md: Likewise. From-SVN: r230735
Robin Dapp committed -
2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/52251 * io/transfer.c (formatted_transfer_scalar_write): Reset skips count. (finalize_transfer): For ADVANCE_NO, emit pending spaces and reset the skip count. 2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * gfortran.dg/fmt_t_8.f90: New test. From-SVN: r230734
Jerry DeLisle committed -
From-SVN: r230733
GCC Administrator committed
-
- 22 Nov, 2015 9 commits
-
-
re PR target/68390 (Incorrect code due to indirect tail call of varargs function with hard float ABI) gcc/ChangeLog: 2015-11-23 Kugan Vivekanandarajah <kuganv@linaro.org> PR target/68390 * config/arm/arm.c (arm_function_ok_for_sibcall): Get function type for indirect function call. gcc/testsuite/ChangeLog: 2015-11-23 Kugan Vivekanandarajah <kuganv@linaro.org> PR target/68390 * gcc/testsuite/gcc.c-torture/execute/pr68390.c: New test. From-SVN: r230730
Kugan Vivekanandarajah committed -
2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * gfortran.dg/fmt_g0_1.f08: Update test. Leading zero. From-SVN: r230729
Jerry DeLisle committed -
write_float.def (output_float): Move block determining room for leading zero to before checkng g0 formatting. 2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io/write_float.def (output_float): Move block determining room for leading zero to before checkng g0 formatting. From-SVN: r230728
Jerry DeLisle committed -
libitm/ * libitm_i.h (gtm_alloc_action): Remove union. * testsuite/libitm.c/alloc-1.c: New. From-SVN: r230727
Torvald Riegel committed -
2015-11-22 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/68486 * simplify.c (gfc_simplify_cshift): Add EXPR_OP to mix. 2015-11-22 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/68486 * gfortran.dg/simplify_cshift_2.f90: New test. From-SVN: r230726
Steven G. Kargl committed -
gcc/fortran/ * openmp.c (match_oacc_clause_gang): Fix uninitialized variable. (gfc_resolve_oacc_declare): Fix comparision. Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org> From-SVN: r230725
James Norris committed -
gcc/fortran/ * dump-parse-tree.c (show_namespace): Handle declares. * gfortran.h (struct symbol_attribute): New fields. (enum gfc_omp_map_map): Add OMP_MAP_DEVICE_RESIDENT and OMP_MAP_LINK. (OMP_LIST_LINK): New enum. (struct gfc_oacc_declare): New structure. (gfc_get_oacc_declare): New definition. (struct gfc_namespace): Change type. (enum gfc_exec_op): Add EXEC_OACC_DECLARE. (struct gfc_code): New field. * module.c (enum ab_attribute): Add AB_OACC_DECLARE_CREATE, AB_OACC_DECLARE_COPYIN, AB_OACC_DECLARE_DEVICEPTR, AB_OACC_DECLARE_DEVICE_RESIDENT, AB_OACC_DECLARE_LINK (attr_bits): Add new initializers. (mio_symbol_attribute): Handle new atributes. * openmp.c (gfc_free_oacc_declare_clauses): New function. (gfc_match_oacc_clause_link: Likewise. (OMP_CLAUSE_LINK): New definition. (gfc_match_omp_clauses): Handle OMP_CLAUSE_LINK. (OACC_DECLARE_CLAUSES): Add OMP_CLAUSE_LINK (gfc_match_oacc_declare): Add checking and module handling. (resolve_omp_clauses): Add array initializer. (gfc_resolve_oacc_declare): Reimplement. * parse.c (case_decl): Add ST_OACC_DECLARE. (parse_spec): Remove handling. (parse_progunit): Remove handling. * parse.h (struct gfc_state_data): Change type. * resolve.c (gfc_resolve_blocks): Handle EXEC_OACC_DECLARE. * st.c (gfc_free_statement): Handle EXEC_OACC_DECLARE. * symbol.c (check_conflict): Add conflict checks. (gfc_add_oacc_declare_create, gfc_add_oacc_declare_copyin, gfc_add_oacc_declare_deviceptr, gfc_add_oacc_declare_device_resident): New functions. (gfc_copy_attr): Handle new symbols. * trans-decl.c (add_clause, find_module_oacc_declare_clauses, finish_oacc_declare): New functions. (gfc_generate_function_code): Replace with call. * trans-openmp.c (gfc_trans_oacc_declare): Reimplement. (gfc_trans_oacc_directive): Handle EXEC_OACC_DECLARE. * trans-stmt.c (gfc_trans_block_construct): Replace with call. * trans-stmt.h (gfc_trans_oacc_declare): Remove argument. * trans.c (trans_code): Handle EXEC_OACC_DECLARE. gcc/testsuite * gfortran.dg/goacc/declare-1.f95: Update test. * gfortran.dg/goacc/declare-2.f95: New test. libgomp/ * testsuite/libgomp.oacc-fortran/declare-1.f90: New test. * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise. * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise. * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise. * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise. Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com> From-SVN: r230722
James Norris committed -
gcc/ * config/aarch64/arm_neon.h (vmulx_lane_f32): New. (vmulx_lane_f64): Likewise. (vmulxq_lane_f32): Refactored & moved. (vmulxq_lane_f64): Likewise. (vmulx_laneq_f32): New. (vmulx_laneq_f64): Likewise. (vmulxq_laneq_f32): Likewise. (vmulxq_laneq_f64): Likewise. (vmulxs_lane_f32): Likewise. (vmulxs_laneq_f32): Likewise. (vmulxd_lane_f64): Likewise. (vmulxd_laneq_f64): Likewise. * config/aarch64/aarch64-simd.md (*aarch64_mulx_elt_<vswap_width_name><mode>, VDQSF): New pattern. (*aarch64_mulx_elt<mode>, VDQF): Likewise. (*aarch64_mulx_elt_to_64v2df): Likewise. (*aarch64_vgetfmulx<mode>, VDQF_DF): Likewise. gcc/testsuite/ * gcc.target/aarch64/simd/vmulx_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulx_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulx_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulx_laneq_f64_1.c: New. * gcc.target/aarch64/simd/vmulxq_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulxq_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulxq_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulxq_laneq_f64_1.c: New. * gcc.target/aarch64/simd/vmulxs_lane_f32_1.c: New. * gcc.target/aarch64/simd/vmulxs_laneq_f32_1.c: New. * gcc.target/aarch64/simd/vmulxd_lane_f64_1.c: New. * gcc.target/aarch64/simd/vmulxd_laneq_f64_1.c: New. From-SVN: r230720
Bilyan Borisov committed -
From-SVN: r230718
GCC Administrator committed
-
- 21 Nov, 2015 1 commit
-
-
* lto.c (iterative_hash_canonical_type): Always recurse for pointers. (gimple_register_canonical_type_1): Check that pointers do not get canonical types. (gimple_register_canonical_type): Do not register pointers. * tree.c (build_pointer_type_for_mode,build_reference_type_for_mode): In LTO we do not compute TYPE_CANONICAL of pointers. (gimple_canonical_types_compatible_p): Improve coments; sanity check that pointers do not have canonical type that would make us believe they are different. * alias.c (get_alias_set): Do structural type equality on pointers; enable pointer path for LTO; also glob pointer to vector with pointer to vector element; glob pointers and references for LTO; do more strict sanity checking about build_pointer_type returning the canonical type which is also the main variant. (record_component_aliases): When component type is pointer and we do LTO; record void_type_node alias set. From-SVN: r230715
Jan Hubicka committed
-