1. 28 Sep, 2016 29 commits
  2. 27 Sep, 2016 11 commits
    • libgo: separate mksysinfo inputs into separate Makefile targets · 14cda8a1
          
          This is a step toward a version of mksysinfo that generates information
          for the runtime package.  This will be used to generate the
          runtime_sysinfo.go file, which is currently directly generated by a
          Makefile target.
          
          Reviewed-on: https://go-review.googlesource.com/29683
      
      From-SVN: r240560
      Ian Lance Taylor committed
    • compiler: avoid call duplication during order eval. · c7ff1374
          
          During the compiler's order_evaluations() pass, duplicate
          call statements were being created and inserted into block
          statement lists in situations where there were calls returning
          multiple arguments. These duplicates were benign in that they
          were ignored during backend code generation, however they
          did cause duplicate calls in AST dumps. Tweak the order
          evaluation code to handle this case better and avoid inserting
          these duplicates.
          
          Fixes golang/go#17237
          
          Reviewed-on: https://go-review.googlesource.com/29857
      
      From-SVN: r240559
      Ian Lance Taylor committed
    • compiler: add src information to AST dumps (part 1 of 2). · 437018ea
          
          When emitting AST dumps, tag the end of selected statements with with
          source file and line number information where available. Example:
          
            tmp.76832448 = 0 // p.go:6
          
          Requires a corresponding change in gcc/go as well as this change to
          gofrontend.
          
          Reviewed-on: https://go-review.googlesource.com/29856
      
      	* go-linemap.cc (Gcc_linemap::to_string): New method.
      
      From-SVN: r240558
      Than McIntosh committed
    • c-cppbuiltin.c (c_cpp_builtins): Define __cpp_capture_star_this for -std=c++1z. · 6e39060a
      	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_capture_star_this for
      	-std=c++1z.
      
      	* g++.dg/cpp1z/feat-cxx1z.C: Add __cpp_capture_star_this test.
      
      From-SVN: r240557
      Jakub Jelinek committed
    • Implement P0018R3, C++17 lambda capture of *this by value as [=,*this] · 8ca33347
      	Implement P0018R3, C++17 lambda capture of *this by value as [=,*this]
      	* parser.c (cp_parser_lambda_introducer): Formatting fix.  Pass
      	true instead of false as by_reference_p to add_capture for 'this'.
      	Parse '*this' simple-capture.
      	* lambda.c (build_capture_proxy): Handle '*this' capture by value.
      	(add_capture): Adjust function comment.  For id == this_identifier,
      	treat by_reference_p as capturing '*this' by reference, i.e. 'this'
      	by value, and !by_reference_p as capturing '*this' by value.
      	(add_default_capture): For implicit 'this' capture, always pass
      	by_reference_p true rather than false.
      
      	* g++.dg/cpp1z/lambda-this1.C: New test.
      	* g++.dg/cpp1z/lambda-this2.C: New test.
      
      From-SVN: r240556
      Jakub Jelinek committed
    • re PR c++/77722 (-fsanitize=undefined doesn't give runtime error in function… · 459bcfb0
      re PR c++/77722 (-fsanitize=undefined doesn't give runtime error in function without return value, unless at least 2 instructions)
      
      	PR c++/77722
      	* cp-gimplify.c (cp_ubsan_maybe_instrument_return): Instrument also
      	functions that have just a STATEMENT_LIST instead of BIND_EXPR, or
      	BIND_EXPR with some statement rather than STATEMENT_LIST as body.
      
      	* g++.dg/ubsan/return-4.C: New test.
      	* g++.dg/ubsan/return-5.C: New test.
      	* g++.dg/ubsan/return-6.C: New test.
      
      From-SVN: r240555
      Jakub Jelinek committed
    • auto-inc-dec.c (try_merge): Remove break after return. · bbfac6da
      	* auto-inc-dec.c (try_merge): Remove break after return.
      	* cselib.c (autoinc_split): Likewise.
      	* explow.c (promote_mode): Likewise.
      	* fixed-value.c (fixed_arithmetic): Likewise.
      	* hsa.c (hsa_internal_fn::get_arity): Likewise.
      	* rtlanal.c (modified_between_p, modified_in_p): Likewise.
      	* trans-mem.c (get_attrs_for): Likewise.
      	* tree-if-conv.c (if_convertible_stmt_p): Likewise.
      	* tree-vrp.c (simplify_stmt_using_ranges): Likewise.
      	* config/aarch64/aarch64-builtins.c (aarch64_fold_builtin): Likewise.
      	* config/aarch64/aarch64.c (aarch64_get_condition_code_1): Likewise.
      	* config/c6x/c6x.c (c6x_get_unit_specifier): Likewise.
      	* config/cr16/cr16.c (legitimate_pic_operand_p): Likewise.
      	* config/cris/cris.c (cris_op_str): Likewise.
      	* config/mn10300/mn10300.c (cc_flags_for_code): Likewise.
      	* config/tilepro/tilepro.c (tilepro_emit_setcc_internal_di): Likewise.
      c-family/
      	* c-ada-spec.c (print_ada_declaration): Remove break after return.
      objc/
      	* objc-act.c (continue_class): Remove break after return.
      	(objc_maybe_printable_name): Likewise.
      fortran/
      	* dependency.c (gfc_dep_compare_expr): Remove break after return.
      	* frontend-passes.c (optimize_op): Likewise.
      	* interface.c (gfc_current_interface_head): Likewise.
      	* symbol.c (check_conflict): Likewise.
      	* trans-intrinsic.c (build_fix_expr): Likewise.
      ada/
      	* terminals.c (is_gui_app): Remove break after return.
      
      From-SVN: r240554
      Jakub Jelinek committed
    • internal-fn.h (IFN_UNIQUE_CODES, [...]): New. · 4d58c533
      	* internal-fn.h (IFN_UNIQUE_CODES, IFN_GOACC_LOOP_CODES,
      	IFN_GOACC_REDUCTION_CODES): New.
      	(enum ifn_unique_kind, enum ifn_goacc_loop_kind, enum
      	ifn_goacc_reduction_kind): Use them.
      	* gimple-pretty-print.c (dump_gimple_call_args): Decode first arg
      	of internal functions, when applicable.
      
      From-SVN: r240552
      Nathan Sidwell committed
    • [Obvious] Delete one redundant word in target-supports.exp comment · 20fba714
      gcc/testsuite/
      
      	* lib/target-supports.exp
      	(check_effective_target_arm_v8_2a_fp16_scalar_hw): Delete redundant word
      	in function comment.
      
      From-SVN: r240551
      Jiong Wang committed
    • Define feature macro and update C++17 library status · 4940de30
      	* doc/xml/manual/status_cxx2017.xml: Update status.
      	* doc/html/*: Regenerate.
      	* include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
      	* testsuite/20_util/function_objects/searchers.cc: Test feature macro.
      
      From-SVN: r240550
      Jonathan Wakely committed
    • Define 3-argument overloads of std::hypot for C++17 (P0030R1) · b658669d
      	* doc/xml/manual/status_cxx2017.xml: Update status.
      	* include/c_global/cmath (hypot): Add three-dimensional overloads.
      	* testsuite/26_numerics/headers/cmath/hypot.cc: New.
      
      From-SVN: r240547
      Jonathan Wakely committed