aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2015-11-24Fix PR68497 (ICE with -fno-checking)Mikhail Maltsev4-12/+33
gcc/ PR target/68497 * config/i386/i386.c (output_387_binary_op): Fix assertion for -fno-checking case. gcc/testsuite/ PR target/68497 * gcc.target/i386/pr68497.c: New test. From-SVN: r230803
2015-11-24remove val_ssa_equiv_hash_traitsTrevor Saunders2-20/+8
gcc/ChangeLog: 2015-11-24 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * tree-ssa-uncprop.c (struct val_ssa_equiv_hash_traits): Remove. (val_ssa_equiv_hash_traits::remove): Likewise. (pass_uncprop::execute): Adjust. From-SVN: r230802
2015-11-24destroy values as well as keys when removing them from hash mapsTrevor Saunders6-24/+34
gcc/ChangeLog: 2015-11-24 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * hash-map-traits.h (simple_hashmap_traits ::remove): call destructors on values that are being removed. * mem-stats.h (hash_map): Pass type of values to simple_hashmap_traits. * tree-sra.c (sra_deinitialize): Remove work around for hash maps not destructing values. * genmatch.c (sinfo_hashmap_traits): Adjust. * tree-ssa-uncprop.c (val_ssa_equiv_hash_traits): Likewise. From-SVN: r230801
2015-11-24[AARCH64][PATCH 3/3] Adding tests to check proper error reporting of out of...Bilyan Borisov13-0/+219
[AARCH64][PATCH 3/3] Adding tests to check proper error reporting of out of bounds accesses to vmulx_lane* NEON intrinsics gcc/testsuite/ * gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f32_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulx_laneq_f32_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulx_laneq_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxd_lane_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxd_laneq_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxq_lane_f32_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxq_lane_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxq_laneq_f32_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxq_laneq_f64_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxs_lane_f32_indices_1.c: New. * gcc.target/aarch64/advsimd-intrinsics/vmulxs_laneq_f32_indices_1.c: New. From-SVN: r230800
2015-11-24[cfgloop] PR middle-end/68375: Restructure get_loop_body_in_bfs_order to ↵Kyrylo Tkachov4-12/+58
handle loops with only a header PR middle-end/68375 * cfgloop.c (get_loop_body_in_bfs_order): Restructure loop to avoid bogus assertion. * gcc.dg/pr68375.c: New test. From-SVN: r230798
2015-11-24re PR target/68483 (gcc 5.2: suboptimal code compared to 4.9)Jakub Jelinek6-2/+79
PR target/68483 * tree-vect-generic.c (lower_vec_perm): If VEC_PERM_EXPR is valid vec_shr pattern, don't lower it even if can_vec_perm_p returns false. * optabs.c (shift_amt_for_vec_perm_mask): Return NULL_RTX whenever first is nelt or above. Don't mask expected with 2 * nelt - 1. * gcc.target/i386/pr68483-1.c: New test. * gcc.target/i386/pr68483-2.c: New test. From-SVN: r230797
2015-11-24re PR c/68337 ([MPX] memcpy() for arrays with function pointers results in ↵Ilya Enkovich5-0/+67
huge resource usage and binaries) gcc/ PR c/68337 * gimple-fold.c: Include ipa-chkp.h. (gimple_fold_builtin_memory_op): Don't fold call if we are going to instrument it and it may copy pointers. gcc/testsuite/ PR c/68337 * gcc.target/i386/mpx/pr68337-1.c: New test. * gcc.target/i386/mpx/pr68337-2.c: New test. From-SVN: r230796
2015-11-24[RTL-ree] PR rtl-optimization/68194: Restrict copy instruction in presence ↵Kyrylo Tkachov5-0/+96
of conditional moves PR rtl-optimization/68194 PR rtl-optimization/68328 PR rtl-optimization/68185 * ree.c (combine_reaching_defs): Reject copy_needed case if copies_list is not empty. * gcc.c-torture/execute/pr68185.c: New test. * gcc.c-torture/execute/pr68328.c: Likewise. From-SVN: r230795
2015-11-24sem_ch3.adb, [...]: Minor reformatting, rewording, and typo corrections.Gary Dismukes10-24/+30
2015-11-24 Gary Dismukes <dismukes@adacore.com> * sem_ch3.adb, sem_type.adb, sem_ch7.adb, sem_ch9.adb, checks.adb, sem_prag.adb, contracts.adb, g-strhas.ads, sem_ch6.adb: Minor reformatting, rewording, and typo corrections. From-SVN: r230794
2015-11-24re PR middle-end/68221 (libgomp reduction-11/12 failures)Richard Biener2-2/+11
2015-11-24 Richard Biener <rguenther@suse.de> PR middle-end/68221 * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Properly use mem_ref_offset. From-SVN: r230793
2015-11-24decl.c (gnat_to_gnu_entity): In ASIS mode, do a minimal translation for root ↵Eric Botcazou3-10/+63
types with discriminants. * gcc-interface/decl.c (gnat_to_gnu_entity) <Concurrent types>: In ASIS mode, do a minimal translation for root types with discriminants. * gcc-interface/trans.c (gnat_to_gnu) <N_Subunit>: Move around. <N_Entry_Body, N_Protected_Body, N_Task_Body>: Likewise. In ASIS mode, process the declarations attached to the body. From-SVN: r230792
2015-11-24trans.c (gnat_to_gnu): In type_annotate_only mode, do not build a NULL_EXPR ↵Eric Botcazou2-0/+6
for an N_Expanded_Name. * gcc-interface/trans.c (gnat_to_gnu): In type_annotate_only mode, do not build a NULL_EXPR for an N_Expanded_Name. From-SVN: r230791
2015-11-24decl.c (is_cplusplus_method): Check that the type of the first parameter ↵Eric Botcazou2-4/+24
(indirectly) has C++ convention too. * gcc-interface/decl.c (is_cplusplus_method): Check that the type of the first parameter (indirectly) has C++ convention too. From-SVN: r230788
2015-11-24combine: Handle aborts in is_parallel_of_n_reg_sets (PR68381)Segher Boessenkool2-1/+8
Some users of is_parallel_of_n_reg_sets disregard the clobbers in a parallel after it has returned "yes, this is a parallel of N sets and maybe some clobbers". But combine uses a clobber of const0_rtx to indicate substitution failure, so this leads to disaster. Fix this by checking for such special clobbers in is_parallel_of_n_reg_sets. PR rtl-optimization/68381 * combine.c (is_parallel_of_n_reg_sets): Return false if the pattern is poisoned. From-SVN: r230786
2015-11-23[PATCH] Fix invalid redundant extension elimination for rl78 portNick Clifton2-10/+20
* ree.c (add_removable_extension): Avoid mis-optimizing cases where the source/dest of the target extension require a different number of hard registers. (combine_set_extension): Remove #if 0 code. Co-Authored-By: Jeff Law <law@redhat.com> From-SVN: r230785
2015-11-24* gcc.c-torture/execute/lto-tbaa-1.c: New testcase.Jan Hubicka2-0/+46
From-SVN: r230784
2015-11-24Daily bump.GCC Administrator1-1/+1
From-SVN: r230783
2015-11-23Fix missing ChangeLog entry for Graphite head files fix.David Edelsohn1-0/+13
From-SVN: r230780
2015-11-23fix PR68314: revert all patches touching the construction of the original ↵Aditya Kumar5-202/+73
schedule Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230778
2015-11-23re PR go/68496 ([libgo] reflect test fails on Linux x86-64)Ian Lance Taylor1-1/+1
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
2015-11-23Fix PR objc/68438 (uninitialized source ranges)David Malcolm5-3/+213
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
2015-11-23fix PR68493: bail out when codegen_error is setAditya Kumar4-1/+50
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230772
2015-11-23fix PR68279: bail out when scev gets instantiated to not_knownAditya Kumar9-75/+147
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230771
2015-11-23call update_ssa onceAditya Kumar3-13/+7
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230770
2015-11-23re PR tree-optimization/68455 (ICE: tree check: expected integer_cst, have ↵Marek Polacek4-1/+31
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
2015-11-23Add uaddv4_optab and usubv4_optabRichard Henderson6-92/+210
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
2015-11-23re PR tree-optimization/68465 (pass_lim doesn't detect identical loop entry ↵Richard Biener4-7/+59
conditions) 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
2015-11-23[AArch64] PR target/68363 Check that argument is real INSN in ↵Kyrylo Tkachov4-1/+31
aarch64_madd_needs_nop 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
2015-11-23Correct graphite*.c ISL header file inclusion order.David Edelsohn8-101/+107
* 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
2015-11-23[AARCH64] Adding constant folding for __builtin_fmulx* with scalar 32 and 64 ↵Bilyan Borisov7-2/+255
bit arguments 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
2015-11-23re PR c++/68001 ([cilkplus] ICE in cp_gimplify_expr, at cp/cp-gimplify.c:760)Igor Zamyatin7-12/+62
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
2015-11-23[Patch] Drop constant overflow flag in adjust_range_with_scev when possibleJiong Wang4-0/+41
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
2015-11-23system-aix.ads: Add Frontend_Exceptions flag.Olivier Hainque43-41/+128
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
2015-11-23opt.ads (Exception_Mechanism): Now three values: Front_End_SJLJ, ↵Olivier Hainque20-127/+298
Back_End_SJLJ and Back_End_ZCX. 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
2015-11-23* zh_CN.po: Update.Joseph Myers2-6623/+2691
From-SVN: r230750
2015-11-23re PR tree-optimization/68327 (ICE on valid code at -O3 on x86_64-linux-gnu ↵Ilya Enkovich5-4/+34
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
2015-11-23Always call free_stmt_vec_info_vec in gather_scalar_reductionsTom de Vries4-1/+51
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
2015-11-23libsanitizer merge from upstream r253555, compiler part.Max Ostapenko7-9/+69
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
2015-11-23re PR target/68482 (No vectorization for x86-64)Richard Biener2-0/+23
2015-11-23 Richard Biener <rguenther@suse.de> PR tree-optimization/68482 * gcc.dg/vect/pr68482.c: New testcase. From-SVN: r230740
2015-11-23Mark by_ref mem_ref in build_receiver_ref as non-trappingTom de Vries2-1/+8
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
2015-11-23re PR tree-optimization/68445 (ICE: internal compiler error: in operator[], ↵Richard Biener4-5/+37
at vec.h) 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
2015-11-23S/390: Fix symbol ref alignmentRobin Dapp6-28/+136
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
2015-11-23re PR fortran/52251 (Nonadvancing I/O and the t edit descriptor)Jerry DeLisle2-0/+10
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
2015-11-23Daily bump.GCC Administrator1-1/+1
From-SVN: r230733
2015-11-22re PR target/68390 (Incorrect code due to indirect tail call of varargs ↵Kugan Vivekanandarajah4-1/+44
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
2015-11-22fmt_g0_1.f08: Update test.Jerry DeLisle2-2/+6
2015-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * gfortran.dg/fmt_g0_1.f08: Update test. Leading zero. From-SVN: r230729
2015-11-22re PR fortran/68486 (187.facerec in SPEC CPU 2000 failed to build)Steven G. Kargl4-0/+21
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
2015-11-22openmp.c (match_oacc_clause_gang): Fix uninitialized variable.James Norris2-4/+11
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
2015-11-22dump-parse-tree.c (show_namespace): Handle declares.James Norris18-84/+715
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
2015-11-22[AARCH64][PATCH 2/3] Implementing vmulx_lane NEON intrinsic variantsBilyan Borisov16-26/+1098
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