- 03 Nov, 2015 10 commits
-
-
gcc/ * config/aarch64/aarch64-simd-builtins.def (fmulx): New. * config/aarch64/aarch64-simd.md (aarch64_fmulx<mode>): New. * config/aarch64/arm_neon.h (vmulx_f32): Rewrite to call fmulx builtin. (vmulxq_f32): Likewise. (vmulx_f64): New. (vmulxq_f64): Rewrite to call fmulx builtin. (vmulxs_f32): Likewise. (vmulxd_f64): Likewise. (vmulx_lane_f32): Remove. * config/aarch64/iterators.md (UNSPEC): Add fmulx. gcc/testsuite/ * gcc/testsuite/gcc.target/aarch64/simd/vmulx_f32_1.c: New. * gcc/testsuite/gcc.target/aarch64/simd/vmulx_f64_1.c: New. * gcc/testsuite/gcc.target/aarch64/simd/vmulxq_f32_1.c: New. * gcc/testsuite/gcc.target/aarch64/simd/vmulxq_f64_1.c: New. * gcc/testsuite/gcc.target/aarch64/simd/vmulxs_f32_1.c: New. * gcc/testsuite/gcc.target/aarch64/simd/vmulxd_f64_1.c: New. From-SVN: r229702
Bilyan Borisov committed -
gcc/: * config/aarch64/aarch64.md (*movhf_aarch64): Use aarch64_reg_or_fp_zero for second operand. gcc/testsuite/: * gcc.target/aarch64/fp16/set_zero_1.c: New. From-SVN: r229701
Alan Lawrence committed -
* ChangeLog: Fix whitespace. * testsuite/ChangeLog: Ditto. From-SVN: r229700
Uros Bizjak committed -
2015-11-03 Ville Voutilainen <ville.voutilainen@gmail.com> Make the default constructors of tuple and pair conditionally explicit. * include/std/type_traits (is_unsigned, __is_array_unknown_bounds, __is_default_constructible_atom, __is_default_constructible_safe, __is_direct_constructible_new_safe, __is_direct_constructible_ref_cast, __is_nt_default_constructible_impl, is_nothrow_default_constructible, is_nothrow_constructible, is_nothrow_assignable, is_trivially_constructible, is_trivially_copy_constructible, is_trivially_move_constructible, is_trivially_assignable, is_trivially_copy_assignable, is_trivially_move_assignable, is_trivially_destructible): Simplify. * include/std/type_traits ( __do_is_implicitly_default_constructible_impl, __is_implicitly_default_constructible_impl, __is_implicitly_default_constructible_safe, __is_implicitly_default_constructible): New. * include/bits/stl_pair.h (pair::pair()): Use it. * include/std/tuple (tuple<_T1, _T2>::tuple): Use it. * include/std/tuple (_ImplicitlyDefaultConstructibleTuple): New. * include/std/tuple (tuple<_Types...>::tuple()): Use it. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. * testsuite/20_util/is_implicitly_default_constructible/requirements/explicit_instantiation.cc: New. * testsuite/20_util/is_implicitly_default_constructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_implicitly_default_constructible/value.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/pair/cons/explicit_construct.cc: Likewise. * testsuite/20_util/tuple/cons/explicit_construct.cc: Likewise. From-SVN: r229699
Ville Voutilainen committed -
* gcc.dg/mvc1.c: Move to ... * gcc.target/i386/mvc1.c: ... here. Require ifunc. * gcc.dg/mvc2.c: Move to ... * gcc.target/i386/mvc2.c: ... here. * gcc.dg/mvc3.c: Move to ... * gcc.target/i386/mvc3.c: ... here. * gcc.dg/mvc4.c: Move to ... * gcc.target/i386/mvc4.c: ... here. Require ifunc. * gcc.dg/mvc5.c: Move to ... * gcc.target/i386/mvc5.c: ... here. * gcc.dg/mvc6.c: Move to ... * gcc.target/i386/mvc6.c: ... here. * gcc.dg/mvc7.c: Move to ... * gcc.target/i386/mvc7.c: ... here. * g++.dg/ext/mvc1.C: Require ifunc. From-SVN: r229697
Uros Bizjak committed -
for gcc/ChangeLog * gimple-expr.c: Include hash-set.h and rtl.h. (mark_addressable_queue): New var. (mark_addressable): Factor actual marking into... (mark_addressable_1): ... this. Queue it up during expand. (mark_addressable_2): New. (flush_mark_addressable_queue): New. * gimple-expr.h (flush_mark_addressable_queue): Declare. * cfgexpand.c: Include gimple-expr.h. (pass_expand::execute): Flush mark_addressable queue. From-SVN: r229696
Alexandre Oliva committed -
From-SVN: r229695
Alexandre Oliva committed -
Bail out early if the inner block has side effects or is otherwise not eligible for ifcombine. for gcc/ChangeLog * tree-ssa-ifcombine.c (tree_ssa_ifcombine_bb_1): Factor out bb_no_side_effects_p tests... (tree_ssa_ifcombine_bb): ... here. From-SVN: r229691
Alexandre Oliva committed -
The ifcombine pass may move a conditional access to an uninitialized value before the condition that ensures it is always well-defined, thus introducing undefined behavior. Stop it from doing so. for gcc/ChangeLog PR tree-optimization/68083 * tree-ssa-ifcombine.c: Include tree-ssa.h. (bb_no_side_effects_p): Test for undefined uses too. * tree-ssa.c (gimple_uses_undefined_value_p): New. * tree-ssa.h (gimple_uses_undefined_value_p): Declare. for gcc/testsuite/ChangeLog PR tree-optimization/68083 * gcc.dg/torture/pr68083.c: New. From Zhendong Su. From-SVN: r229690
Alexandre Oliva committed -
From-SVN: r229689
GCC Administrator committed
-
- 02 Nov, 2015 17 commits
-
-
Reviewed-on: https://go-review.googlesource.com/16583 From-SVN: r229686
Ian Lance Taylor committed -
* tree-ssa-threadupdate.c (valid_jump_thread_path): Also detect cases where the loop latch edge is in the middle of an FSM path. * gcc.dg/tree-ssa/ssa-thread-11.c: Verify that we do not have irreducible loops in the CFG. From-SVN: r229685
Jeff Law committed -
2015-11-03 Tom de Vries <tom@codesourcery.com> * tree-ssa-structalias.c (make_restrict_var_constraints): Rename to ... (make_param_constraints): ... this. Add and handle restrict_name parameter. Handle is_full_var case. (intra_create_variable_infos): Use make_param_constraints. From-SVN: r229684
Tom de Vries committed -
2015-11-03 Tom de Vries <tom@codesourcery.com> * tree-ssa-structalias.c (make_restrict_var_constraints): Replace make_copy_constraint call with make_constraint_from call. From-SVN: r229683
Tom de Vries committed -
2015-11-02 Andreas Tobler <andreast@gcc.gnu.org> * config/rs6000/freebsd64.h (ASM_SPEC32): Adust spec to handle PIE executables. From-SVN: r229680
Andreas Tobler committed -
Reviewed-on: https://go-review.googlesource.com/16580 From-SVN: r229676
Ian Lance Taylor committed -
Attempt to fix a build bug report: ../../../../libgo/go/syscall/exec_linux.go:185:37: error: integer constant overflow _, err1 = raw_ioctl_ptr(sys.Ctty, TIOCSPGRP, unsafe.Pointer(&pgrp)) Reviewed-on: https://go-review.googlesource.com/16539 From-SVN: r229674
Ian Lance Taylor committed -
libcpp/ChangeLog: * include/line-map.h (source_location): In the table in the descriptive comment, show UNKNOWN_LOCATION, BUILTINS_LOCATION, LINE_MAP_MAX_LOCATION_WITH_COLS, LINE_MAP_MAX_SOURCE_LOCATION. Add notes about ad-hoc values. From-SVN: r229673
David Malcolm committed -
The new routines operate on the built-in enum rather than on tree decls. The idea is to extend this to handle internal functions too, with a combined enum for both. The patch also moves fold_fma too, with the same prototype. The long-term plan is to replace FMA_EXPR with an internal function, for consistency with the way that things like SQRT will be handled. Tested on x86_64-linux-gnu, arm-linux-gnueabi and aarch64-linux-gnu. gcc/ * builtins.h (fold_fma): Move to fold-const-call.h. * builtins.c: Include fold-const-call.h. (mathfn_built_in_2): New function, split out from... (mathfn_built_in_1): ...here. (do_real_to_int_conversion, fold_const_builtin_pow) (fold_const_builtin_logb, fold_const_builtin_significand) (fold_const_builtin_load_exponent, do_mpfr_arg1, do_mpfr_arg2) (do_mpfr_arg3, do_mpfr_sincos, do_mpfr_bessel_n, do_mpc_arg1): Delete. (fold_builtin_sincos): Use fold_const_call to handle constants. (fold_builtin_1, fold_builtin_2, fold_builtin_3): Add explicit checks for ERROR_MARK. Use fold_const_call to handle constant folds for math functions. (fold_fma): Move to fold-const-call.c. * fold-const.c: Include fold-const-call.h. * Makefile.in (OBJS): Add fold-const-call.o. (PLUGIN_HEADERS): Add fold-const-call.h. * realmpfr.h (real_from_mpfr): Allow the format to be specified directly. * realmpfr.c (real_from_mpfr): Likewise. * fold-const-call.h, fold-const-call.c: New files. From-SVN: r229669
Richard Sandiford committed -
* config/arm/neon-testgen.ml (emit_epilogue): Remove extraneous brackets and semicolon. From-SVN: r229662
Julian Brown committed -
gcc/: tree-scalar-evolution.c (interpret_rhs_expr): Handle some LSHIFT_EXPRs as equivalent MULT_EXPRs. gcc/testsuite/: gcc.dg/vect/vect-strided-shift.c: New. From-SVN: r229660
Alan Lawrence committed -
PR target/67929 * gcc.target/arm/pr67929_1.c: Move to... * gcc.c-torture/execute/pr67929_1.c: ... Here. Remove arm-specific directives. Add noclone, noinline attributes. From-SVN: r229657
Kyrylo Tkachov committed -
gcc/ PR middle-end/68166 * fold-const.c: Include "md5.h". From-SVN: r229652
Thomas Schwinge committed -
* gcc.dg/tree-ssa/ssa-thread-11.c: Update target selector. From-SVN: r229651
Jeff Law committed -
* vmsdbgout.c: Revert unused header file reduction patch. From-SVN: r229650
Jeff Law committed -
From-SVN: r229649
Jeff Law committed -
From-SVN: r229648
GCC Administrator committed
-
- 01 Nov, 2015 5 commits
-
-
Reviewed-on: https://go-review.googlesource.com/16534 From-SVN: r229645
Ian Lance Taylor committed -
re PR go/67968 (go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812) PR go/67968 compiler: Traverse types of call expressions. https://gcc.gnu.org/PR67968 provides a test case that causes a gccgo crash on valid code. The compiler failed to build the hash and equality functions required for a type descriptor. The descriptor is for an unnamed type that is being returned by a function imported from a different package. The unnamed type is being implicitly converted to an interface type by a return statement. The fix is to ensure that the type of a call expression is always traversed. Test case sent out for the master testsuite as https://golang.org/cl/16532 . From-SVN: r229642
Ian Lance Taylor committed -
* gcc.target/i386/pr67609-2.c: Include sse2-check.h. (sse2_test): Rename from main. Do not return 0. From-SVN: r229641
Uros Bizjak committed -
* gfortran.dg/debug/pr46756.f: Remove XFAIL for AIX. * gfortran.dg/proc_ptr_39.f90: Require visibility. * gfortran.dg/read_dir.f90: XFAIL AIX. From-SVN: r229640
David Edelsohn committed -
From-SVN: r229639
GCC Administrator committed
-
- 31 Oct, 2015 8 commits
-
-
When not using split stacks, libgo allocate large stacks for each goroutine. On a 64-bit system, libgo allocates a maximum of 128G for the Go heap, and allocates 4M for each stack. When the stacks are allocated from the Go heap, the result is that a program can only create 32K goroutines, which is not enough for an active Go server. This patch changes libgo to allocate the stacks using mmap directly, rather than allocating them out of the Go heap. This change is only done for 64-bit systems when not using split stacks. When using split stacks, the stacks are allocated using mmap directly anyhow. On a 32-bit system, there is no maximum size for the Go heap, or, rather, the maximum size is the available address space anyhow. Reviewed-on: https://go-review.googlesource.com/16531 From-SVN: r229636
Ian Lance Taylor committed -
* Makefile.am (go_cmd_go_files): Update to Go 1.5.1 library by adding alldocs.go, doc.go, note.go. * Makefile.in: Rebuild. From-SVN: r229635
Ian Lance Taylor committed -
This function is quite a puzzle; untangle it. No functional change. 2015-10-31 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p): Rewrite. From-SVN: r229634
Segher Boessenkool committed -
This one for TARGET_TOC && TARGET_MINIMAL_TOC. Without it, r30 is not saved in the prologue for functions that do not use r30, but the register is set later in the prologue anyhow. This made all java tests fail. 2015-10-31 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p): Use the same condition for testing whether RS6000_PIC_OFFSET_TABLE_REGNUM is live as for using it elsewhere, for TARGET_MINIMAL_TOC. From-SVN: r229633
Segher Boessenkool committed -
/cp 2015-10-31 Ville Voutilainen <ville.voutilainen@gmail.com> Remove the implementation of N3994, terse range-for loops. * parser.c (cp_parser_for_init_statement): Remove the parsing of a terse range-for. /testsuite 2015-10-31 Ville Voutilainen <ville.voutilainen@gmail.com> Remove the implementation of N3994, terse range-for loops. * g++.dg/cpp1z/range-for1.C: Remove. From-SVN: r229632
Ville Voutilainen committed -
PR Bootstrap/68168 gcc/fortran/ * openmp.c (resolve_omp_clauses): Pass &n->where when calling gfc_error. From-SVN: r229631
Cesar Philippidis committed -
From-SVN: r229630
Eric Botcazou committed -
* parser.c (cp_parser_type_id_1): Allow 'auto' if -fconcepts. (cp_parser_template_type_arg): Likewise. (get_concept_from_constraint): Split out most logic to... * constraint.cc (placeholder_extract_concept_and_args): ...here. (equivalent_placeholder_constraints, hash_placeholder_constraint): New. * cxx-pretty-print.c (pp_cxx_constrained_type_spec): New. * cxx-pretty-print.h: Declare it. * error.c (dump_type) [TEMPLATE_TYPE_PARM]: Call it. * pt.c (is_auto_r, extract_autos_r, extract_autos, auto_hash): New. (type_uses_auto): Use is_auto_r. (do_auto_deduction): Handle multiple 'auto's if -fconcepts. * typeck.c (structural_comptypes) [TEMPLATE_TYPE_PARM]: Compare constraints. From-SVN: r229629
Jason Merrill committed
-