hubicka [Sat, 24 May 2014 01:42:22 +0000 (01:42 +0000)]
* rtti.c: Include tm_p.h
(emit_tinfo_decl): Force RTTI data to be aligned to required
ABI alignment only.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210887
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 24 May 2014 01:41:06 +0000 (01:41 +0000)]
* class.c (build_vtable): Align vtables to TARGET_VTABLE_ENTRY_ALIGN
ignoring other target adjustments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210886
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 24 May 2014 00:17:02 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210885
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 23 May 2014 20:32:04 +0000 (20:32 +0000)]
2014-05-23 Tobias Burnus <burnus@net-b.de>
* gfc-internals.texi: Change URLs to HTTPS; fix broken links.
* gfortran.texi: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210877
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:46:59 +0000 (16:46 +0000)]
rs6000: Make all rlw*nm and rld*c* type shift
They are often labeled just "integer" currently. Fix that.
Also handle shift properly in those scheduling descriptions that
neglected it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210873
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:45:11 +0000 (16:45 +0000)]
rs6000: Make all logical instructions one type
They are currently just "integer", but the dot version is fast_compare.
This makes them all "logical".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210872
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:43:31 +0000 (16:43 +0000)]
rs6000: Make all add instructions one type
They are currently just "integer", but the dot version is fast_compare.
This makes them all "add". Later we should introduce attributes to
distinguish e.g. addc and adde (which aren't currently handled as
separate instructions at all, only in groups).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210871
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:41:20 +0000 (16:41 +0000)]
rs6000: Make all shift instructions one type
This uses the attributes "var_shift" and "dot" to specify the differences:
var_shift_rotate -> shift var_shift=yes
delayed_compare -> shift var_shift=no dot=yes
var_delayed_compare -> shift var_shift=yes dot=yes
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210870
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:39:42 +0000 (16:39 +0000)]
rs6000: Make all divide instructions one type
This uses the attribute "size" to specify the differences:
idiv -> div size=32
ldiv -> div size=64
It could use "dot" as well, but the current code doesn't handle that.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210869
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:37:55 +0000 (16:37 +0000)]
rs6000: Make all insert instructions one type
This uses the attribute "size" to specify the differences:
insert_word -> insert size=32
insert_dword -> insert size=64
It could use "dot" as well, but the current code doesn't handle that.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210868
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:36:14 +0000 (16:36 +0000)]
rs6000: Make all multiply instructions one type
This uses the attributes "size" and "dot" to specify the differences:
imul3 -> mul size=8
imul2 -> mul size=16
imul -> mul size=32
lmul -> mul size=64
imul_compare -> mul size=32 dot=yes
lmul_compare -> mul size=64 dot=yes
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210867
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:34:01 +0000 (16:34 +0000)]
rs6000: New type attribute value "halfmul"
This is for the legacy integer multiply-accumulate instructions.
Quite a mouthful, and "mulhw" is also a terrible name since we already
have a machine instruction called exactly that. Hence "halfmul".
Also fixes the titan automaton description for this.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210866
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 23 May 2014 16:31:33 +0000 (16:31 +0000)]
[PATCH 1/9] rs6000: Clean up the "type" attribute
Get rid of the one huge line. Group and order things a bit. Further
changes will follow so this doesn't try to make it perfect.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210865
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 23 May 2014 15:52:20 +0000 (15:52 +0000)]
2014-05-23 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/53787
* params.def (PARAM_IPA_MAX_AA_STEPS): New param.
* ipa-prop.h (ipa_node_params): Rename uses_analysis_done to
analysis_done, update all uses.
* ipa-prop.c: Include domwalk.h
(param_analysis_info): Removed.
(param_aa_status): New type.
(ipa_bb_info): Likewise.
(func_body_info): Likewise.
(ipa_get_bb_info): New function.
(aa_overwalked): Likewise.
(find_dominating_aa_status): Likewise.
(parm_bb_aa_status_for_bb): Likewise.
(parm_preserved_before_stmt_p): Changed to use new param AA info.
(load_from_unmodified_param): Accept func_body_info as a parameter
instead of parms_ainfo.
(parm_ref_data_preserved_p): Changed to use new param AA info.
(parm_ref_data_pass_through_p): Likewise.
(ipa_load_from_parm_agg_1): Likewise. Update callers.
(compute_complex_assign_jump_func): Changed to use new param AA info.
(compute_complex_ancestor_jump_func): Likewise.
(ipa_compute_jump_functions_for_edge): Likewise.
(ipa_compute_jump_functions): Removed.
(ipa_compute_jump_functions_for_bb): New function.
(ipa_analyze_indirect_call_uses): Likewise, moved variable
declarations down.
(ipa_analyze_virtual_call_uses): Accept func_body_info instead of node
and info, moved variable declarations down.
(ipa_analyze_call_uses): Accept and pass on func_body_info instead of
node and info.
(ipa_analyze_stmt_uses): Likewise.
(ipa_analyze_params_uses): Removed.
(ipa_analyze_params_uses_in_bb): New function.
(ipa_analyze_controlled_uses): Likewise.
(free_ipa_bb_info): Likewise.
(analysis_dom_walker): New class.
(ipa_analyze_node): Handle node-specific forbidden analysis,
initialize and free func_body_info, use dominator walker.
(ipcp_modif_dom_walker): New class.
(ipcp_transform_function): Create and free func_body_info, use
ipcp_modif_dom_walker, moved a lot of functionality there.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210864
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 23 May 2014 15:34:03 +0000 (15:34 +0000)]
2014-05-23 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/61215
* gcc.target/i386/pr61215.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210863
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 23 May 2014 14:44:42 +0000 (14:44 +0000)]
* builtins.def: Change SANITIZE_FLOAT_DIVIDE to SANITIZE_NONDEFAULT.
* gcc.c (sanitize_spec_function): Likewise.
* convert.c (convert_to_integer): Include "ubsan.h". Add
floating-point to integer instrumentation.
* doc/invoke.texi: Document -fsanitize=float-cast-overflow.
* flag-types.h (enum sanitize_code): Add SANITIZE_FLOAT_CAST and
SANITIZE_NONDEFAULT.
* opts.c (common_handle_option): Handle -fsanitize=float-cast-overflow.
* sanitizer.def (BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW,
BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW_ABORT): Add.
* ubsan.c: Include "realmpfr.h" and "dfp.h".
(get_ubsan_type_info_for_type): Handle REAL_TYPEs.
(ubsan_type_descriptor): Set tkind to 0xffff for types other than
float/double/long double.
(ubsan_instrument_float_cast): New function.
* ubsan.h (ubsan_instrument_float_cast): Declare.
testsuite/
* c-c++-common/ubsan/float-cast-overflow-1.c: New test.
* c-c++-common/ubsan/float-cast-overflow-10.c: New test.
* c-c++-common/ubsan/float-cast-overflow-2.c: New test.
* c-c++-common/ubsan/float-cast-overflow-3.c: New test.
* c-c++-common/ubsan/float-cast-overflow-4.c: New test.
* c-c++-common/ubsan/float-cast-overflow-5.c: New test.
* c-c++-common/ubsan/float-cast-overflow-6.c: New test.
* c-c++-common/ubsan/float-cast-overflow-7.c: New test.
* c-c++-common/ubsan/float-cast-overflow-7.h: New file.
* c-c++-common/ubsan/float-cast-overflow-8.c: New test.
* c-c++-common/ubsan/float-cast-overflow-9.c: New test.
* c-c++-common/ubsan/float-cast.h: New file.
* g++.dg/ubsan/float-cast-overflow-bf.C: New test.
* gcc.dg/ubsan/float-cast-overflow-bf.c: New test.
libsanitizer/
* ubsan/ubsan_value.cc (getFloatValue): Handle 96-bit
floating-point types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210862
138bc75d-0d04-0410-961f-
82ee72b054a4
mshawcroft [Fri, 23 May 2014 12:13:56 +0000 (12:13 +0000)]
[AARCH64] Support tail indirect function call.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210861
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 12:06:48 +0000 (12:06 +0000)]
Be a bit less explicit.
gcc/
* gimplify.c (omp_notice_variable) <case OMP_CLAUSE_DEFAULT_NONE>:
Rewrite check for ORT_PARALLEL and ORT_COMBINED_PARALLEL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210860
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 23 May 2014 11:49:26 +0000 (11:49 +0000)]
* testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
selector.
* testsuite/30_threads/call_once/60497.cc: Likewise.
* testsuite/30_threads/condition_variable/54185.cc: Likewise.
* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
* testsuite/30_threads/packaged_task/60564.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
* testsuite/30_threads/promise/60966.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210859
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:39:35 +0000 (11:39 +0000)]
Make it easier to diff expand_omp_for_* functions.
gcc/
* omp-low.c (expand_omp_for_static_chunk): Rename variable si to
gsi, and variables v_* to v*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210858
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 23 May 2014 11:37:57 +0000 (11:37 +0000)]
2014-05-23 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp1y/lambda-init9.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210857
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 23 May 2014 11:33:42 +0000 (11:33 +0000)]
* varasm.c (output_constructor_bitfield): Fix thinkos in latest change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210856
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:32:01 +0000 (11:32 +0000)]
GF_OMP_FOR_SIMD: Flag for SIMD variants of OMP_FOR kinds.
gcc/
* gimple.h (enum gf_mask): Add and use GF_OMP_FOR_SIMD.
* omp-low.c: Update accordingly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210855
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:31:51 +0000 (11:31 +0000)]
Just enumerate all GF_OMP_FOR_KIND_* and GF_OMP_TARGET_KIND_*.
gcc/
* gimple.h (enum gf_mask): Rewrite "<< 0" shift expressions used
for GF_OMP_FOR_KIND_MASK, GF_OMP_FOR_KIND_FOR,
GF_OMP_FOR_KIND_DISTRIBUTE, GF_OMP_FOR_KIND_SIMD,
GF_OMP_FOR_KIND_CILKSIMD, GF_OMP_TARGET_KIND_MASK,
GF_OMP_TARGET_KIND_REGION, GF_OMP_TARGET_KIND_DATA,
GF_OMP_TARGET_KIND_UPDATE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210854
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:23:49 +0000 (11:23 +0000)]
Remove duplicated variable initialization.
gcc/c/
* c-typeck.c (c_finish_omp_clauses): Remove duplicated variable
initialization.
gcc/cp/
* semantics.c (finish_omp_clauses): Remove duplicated variable
initialization.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210853
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:07:57 +0000 (11:07 +0000)]
Be more explicit.
gcc/
* gimplify.c (omp_notice_variable) <case OMP_CLAUSE_DEFAULT_NONE>:
Explicitly enumerate the expected region types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210852
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Fri, 23 May 2014 11:00:31 +0000 (11:00 +0000)]
Fix some bool vs. tree confusion.
gcc/c/
* c-parser.c (c_parser_omp_target): Return bool values.
gcc/cp/
* parser.c (cp_parser_omp_target): Return bool values.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210851
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 23 May 2014 10:19:32 +0000 (10:19 +0000)]
* testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
dragonfly.
* testsuite/30_threads/call_once/60497.cc: Add target selectors.
* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210850
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 23 May 2014 10:19:20 +0000 (10:19 +0000)]
PR libstdc++/60793
* testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
dragonfly target selector to all tests that run on freebsd.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210849
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 23 May 2014 10:11:03 +0000 (10:11 +0000)]
2014-05-22 Paul Eggert <eggert@cs.ucla.edu>
PR other/56955
* doc/extend.texi (Function Attributes): Fix __attribute__ ((malloc))
documentation; the old documentation didn't clearly state the
constraints on the contents of the pointed-to storage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210848
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 23 May 2014 08:13:59 +0000 (08:13 +0000)]
2014-05-23 Richard Biener <rguenther@suse.de>
PR testsuite/61266
* gcc.dg/Wstrict-overflow-18.c: Revert un-XFAILing and
adjust testcase to reflect reality.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210846
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Fri, 23 May 2014 07:33:24 +0000 (07:33 +0000)]
Fix bootstrap error on ia64
* config/ia64/ia64.c (ia64_first_cycle_multipass_dfa_lookahead_guard):
Return default value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210845
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Fri, 23 May 2014 03:33:28 +0000 (03:33 +0000)]
2014-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR tree-optimization/54733
gcc/
* tree-ssa-math-opts.c (nop_stats): New "bswap_stats" structure.
(CMPNOP): Define.
(find_bswap_or_nop_load): New.
(find_bswap_1): Renamed to ...
(find_bswap_or_nop_1): This. Also add support for memory source.
(find_bswap): Renamed to ...
(find_bswap_or_nop): This. Also add support for memory source and
detection of bitwise operations equivalent to load in host endianness.
(execute_optimize_bswap): Likewise. Also move its leading comment back
in place and split statement transformation into ...
(bswap_replace): This.
gcc/testsuite
* gcc.dg/optimize-bswapdi-3.c: New test to check extension of bswap
optimization to support memory sources and bitwise operations
equivalent to load in host endianness.
* gcc.dg/optimize-bswaphi-1.c: Likewise.
* gcc.dg/optimize-bswapsi-2.c: Likewise.
* gcc.c-torture/execute/bswap-2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210843
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Fri, 23 May 2014 02:47:45 +0000 (02:47 +0000)]
2014-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
* lib/target-supports.exp: New effective targets for architectures
capable of performing byte swap.
* gcc.dg/optimize-bswapdi-1.c: Convert to new bswap target.
* gcc.dg/optimize-bswapdi-2.c: Likewise.
* gcc.dg/optimize-bswapsi-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210842
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Fri, 23 May 2014 02:06:40 +0000 (02:06 +0000)]
* configure.ac [with_newlib] (HAVE_STRNLEN, HAVE_STRNDUP): Define.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210841
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 23 May 2014 01:52:01 +0000 (01:52 +0000)]
2014-05-22 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/61215
* lra-elelimination.c (lra_eliminate_regs_1): Don't use
simplify_gen_subreg until final substitution.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210838
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Fri, 23 May 2014 01:17:41 +0000 (01:17 +0000)]
PR target/61231
* config/rs6000/rs6000.c (mem_operand_gpr): Handle SImode.
* config/rs6000/rs6000.md (extendsidi2_lfiwax, extendsidi2_nocell):
Use "Y" constraint rather than "m".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210835
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 23 May 2014 00:17:15 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210834
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 22 May 2014 22:28:24 +0000 (22:28 +0000)]
/cp
2014-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61088
* lambda.c (add_capture): Enforce that capture by value requires
complete type.
* typeck2.c (cxx_incomplete_type_inform): Early return if
TYPE_MAIN_DECL is null.
/testsuite
2014-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61088
* g++.dg/cpp0x/lambda/lambda-ice13.C: New.
* g++.dg/cpp0x/lambda/lambda-ice7.C: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210829
138bc75d-0d04-0410-961f-
82ee72b054a4
kugan [Thu, 22 May 2014 22:05:08 +0000 (22:05 +0000)]
2014-05-23 Kugan Vivekanandarajah <kuganv@linaro.org>
* config/aarch64/aarch64.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New
define.
* config/aarch64/aarch64-protos.h (aarch64_atomic_assign_expand_fenv):
New function declaration.
* config/aarch64/aarch64-builtins.c (aarch64_builtins) : Add
AARCH64_BUILTIN_GET_FPCR, AARCH64_BUILTIN_SET_FPCR.
AARCH64_BUILTIN_GET_FPSR and AARCH64_BUILTIN_SET_FPSR.
(aarch64_init_builtins) : Initialize builtins
__builtins_aarch64_set_fpcr, __builtins_aarch64_get_fpcr.
__builtins_aarch64_set_fpsr and __builtins_aarch64_get_fpsr.
(aarch64_expand_builtin) : Expand builtins __builtins_aarch64_set_fpcr
__builtins_aarch64_get_fpcr, __builtins_aarch64_get_fpsr,
and __builtins_aarch64_set_fpsr.
(aarch64_atomic_assign_expand_fenv): New function.
* config/aarch64/aarch64.md (set_fpcr): New pattern.
(get_fpcr) : Likewise.
(set_fpsr) : Likewise.
(get_fpsr) : Likewise.
(unspecv): Add UNSPECV_GET_FPCR and UNSPECV_SET_FPCR, UNSPECV_GET_FPSR
and UNSPECV_SET_FPSR.
* doc/extend.texi (AARCH64 Built-in Functions) : Document
__builtins_aarch64_set_fpcr, __builtins_aarch64_get_fpcr.
__builtins_aarch64_set_fpsr and __builtins_aarch64_get_fpsr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210828
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Thu, 22 May 2014 21:17:29 +0000 (21:17 +0000)]
PR 60324 Handle long path names, don't use PATH_MAX.
2014-05-23 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/60324
* runtime/string.c: Include stdlib.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210827
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 22 May 2014 21:09:59 +0000 (21:09 +0000)]
2014-05-22 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60969
* ira-costs.c (record_reg_classes): Process NO_REGS for matching
constraints. Set up mem cost for NO_REGS case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210824
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 22 May 2014 20:22:47 +0000 (20:22 +0000)]
Remove unused, and sort prototypes.
gcc/c-family/
* c-common.h (c_omp_sharing_predetermined, c_omp_remap_decl):
Remove prototypes.
(record_types_used_by_current_var_decl): Move prototype to where
it belongs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210823
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 22 May 2014 20:16:07 +0000 (20:16 +0000)]
Cosmetic fixes for DEF_FUNCTION_TYPE_* macros.
gcc/ada/
* gcc-interface/utils.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
(DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
(DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
gcc/
* builtin-types.def: Simplify examples for DEF_FUNCTION_TYPE_*.
gcc/c-family/
* c-common.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
(DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
(DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
gcc/fortran/
* f95-lang.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
(DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
(DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
* types.def: Simplify examples for DEF_FUNCTION_TYPE_*.
gcc/lto/
* lto-lang.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
(DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
(DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210822
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 22 May 2014 19:44:14 +0000 (19:44 +0000)]
Fix copy'n'pasto.
gcc/c/
* c-parser.c (c_parser_omp_clause_thread_limit): Rename
num_teams_loc variable to num_thread_limit_loc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210821
138bc75d-0d04-0410-961f-
82ee72b054a4
davidxl [Thu, 22 May 2014 18:18:48 +0000 (18:18 +0000)]
Fix expected messages in test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210820
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Thu, 22 May 2014 16:21:18 +0000 (16:21 +0000)]
Create a new header lto-section-names.h
gcc/
* config/darwin.c: Include "lto-section-names.h".
(LTO_SEGMENT_NAME): Don't define.
* config/i386/winnt.c: Include "lto-section-names.h".
* lto-streamer.c: Include "lto-section-names.h".
* lto-streamer.h (LTO_SECTION_NAME_PREFIX): Don't define.
* lto-wrapper.c: Include "lto-section-names.h".
(LTO_SECTION_NAME_PREFIX): Don't define.
* lto-section-names.h: New file.
* cgraphunit.c: Include "lto-section-names.h".
gcc/lto/
* lto-object.c: Include "lto-section-names.h".
(LTO_SEGMENT_NAME): Don't define.
* lto.c: Include "lto-section-names.h".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210819
138bc75d-0d04-0410-961f-
82ee72b054a4
bergner [Thu, 22 May 2014 15:55:48 +0000 (15:55 +0000)]
gcc/
* config/rs6000/htm.md (ttest): Use correct shift value to get CR0.
gcc/testsuite/
* gcc.target/powerpc/htm-ttest.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210815
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Thu, 22 May 2014 15:38:51 +0000 (15:38 +0000)]
PR target/61208
* arm.md (arm_cmpdi_unsigned): Fix length calculation for Thumb2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210812
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Thu, 22 May 2014 15:15:36 +0000 (15:15 +0000)]
* config/msp430/t-msp430 (HOST_LIBGCC2_CFLAGS): Add
-mhwmult=none.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210811
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Thu, 22 May 2014 15:09:06 +0000 (15:09 +0000)]
* config/msp430/msp430.h (ASM_SPEC): Add spaces after inserted
options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210808
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 22 May 2014 14:32:56 +0000 (14:32 +0000)]
* tree-ssa-forwprop.c (associate_plusminus): Extend (T)(P + A) - (T)P
-> (T)A transformation to integer types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210807
138bc75d-0d04-0410-961f-
82ee72b054a4
tejohnson [Thu, 22 May 2014 14:06:08 +0000 (14:06 +0000)]
2014-05-22 Teresa Johnson <tejohnson@google.com>
* gcov-io.c (gcov_position): Use gcov_nonruntime_assert.
(gcov_is_error): Remove gcc_assert from IN_LIBGCOV code.
(gcov_rewrite): Use gcov_nonruntime_assert.
(gcov_open): Ditto.
(gcov_write_words): Ditto.
(gcov_write_length): Ditto.
(gcov_read_words): Use gcov_nonruntime_assert, and remove
gcc_assert from IN_LIBGCOV code.
(gcov_read_summary): Use gcov_error to flag profile corruption.
(gcov_sync): Use gcov_nonruntime_assert.
(gcov_seek): Remove gcc_assert from IN_LIBGCOV code.
(gcov_histo_index): Use gcov_nonruntime_assert.
(static void gcov_histogram_merge): Ditto.
(compute_working_sets): Ditto.
* gcov-io.h (gcov_nonruntime_assert): Define.
(gcov_error): Define for !IN_LIBGCOV
* libgcov-driver.c (gcov_error): Move declaration before gcov-io.c
include.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210805
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 22 May 2014 12:17:15 +0000 (12:17 +0000)]
cp:
PR c/61271
* cp-array-notation.c (cilkplus_an_triplet_types_ok_p): Fix condition.
testsuite:
PR c/61271
* g++.dg/cilk-plus/AN/array_function.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210804
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 22 May 2014 11:56:45 +0000 (11:56 +0000)]
Fix test in libiberty/testsuite/demangle-expected.
libiberty/
* testsuite/demangle-expected: Fix last commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210803
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 22 May 2014 09:59:49 +0000 (09:59 +0000)]
2014-05-22 Richard Biener <rguenther@suse.de>
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
BUILT_IN_REALLOC like BUILT_IN_STRDUP.
(call_may_clobber_ref_p_1): Handle BUILT_IN_REALLOC as allocation
and deallocation site.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Handle BUILT_IN_REALLOC similar to BUILT_IN_STRDUP with also
passing through the incoming points-to set.
(handle_lhs_call): Use flags argument instead of recomputing it.
(find_func_aliases_for_call): Call handle_lhs_call with proper
call return flags.
* gcc.dg/tree-ssa/alias-33.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210802
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 22 May 2014 07:59:32 +0000 (07:59 +0000)]
* tree-streamer-in.c (unpack_ts_real_cst_value_fields): Make sure
all padding bits in REAL_VALUE_TYPE are cleared.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210748
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 07:26:00 +0000 (07:26 +0000)]
Cleanup and improve multipass_dfa_lookahead_guard
* config/i386/i386.c (core2i7_first_cycle_multipass_filter_ready_try,)
(core2i7_first_cycle_multipass_begin,)
(core2i7_first_cycle_multipass_issue,)
(core2i7_first_cycle_multipass_backtrack): Update signature.
* config/ia64/ia64.c
(ia64_first_cycle_multipass_dfa_lookahead_guard_spec): Remove.
(ia64_first_cycle_multipass_dfa_lookahead_guard): Update signature.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC): Remove
hook definition.
(ia64_first_cycle_multipass_dfa_lookahead_guard): Merge logic from
ia64_first_cycle_multipass_dfa_lookahead_guard_spec. Update return
values.
* config/rs6000/rs6000.c (rs6000_use_sched_lookahead_guard): Update
return values.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC): Remove.
* haifa-sched.c (ready_try): Make signed to allow negative values.
(rebug_ready_list_1): Update.
(choose_ready): Simplify.
(sched_extend_ready_list): Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210747
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 07:25:48 +0000 (07:25 +0000)]
Remove IA64 speculation tweaking flags
* config/ia64/ia64.c (ia64_set_sched_flags): Delete handling of
speculation tuning flags.
(msched-prefer-non-data-spec-insns,)
(msched-prefer-non-control-spec-insns): Obsolete options.
* haifa-sched.c (choose_ready): Remove handling of
PREFER_NON_CONTROL_SPEC and PREFER_NON_DATA_SPEC.
* sched-int.h (enum SPEC_SCHED_FLAGS): Remove PREFER_NON_CONTROL_SPEC
and PREFER_NON_DATA_SPEC.
* sel-sched.c (process_spec_exprs): Remove handling of
PREFER_NON_CONTROL_SPEC and PREFER_NON_DATA_SPEC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210746
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 07:17:07 +0000 (07:17 +0000)]
* MAINTAINERS: Update my affiliation/email.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210745
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 07:15:23 +0000 (07:15 +0000)]
Add forgotten ChangeLog entries for 2 patches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210744
138bc75d-0d04-0410-961f-
82ee72b054a4
kcc [Thu, 22 May 2014 07:09:21 +0000 (07:09 +0000)]
libsanitizer merge from upstream r209283
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210743
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 22 May 2014 07:07:29 +0000 (07:07 +0000)]
Remove empty directory gcc/testsuite/g++.dg/dso.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210742
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 22 May 2014 05:38:04 +0000 (05:38 +0000)]
PR lto/61012
* lto-symtab.c (lto_symtab_merge_decls_1): Do not ICE on undefined externals
mixed with variables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210740
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Thu, 22 May 2014 03:51:25 +0000 (03:51 +0000)]
PR 60324 Handle long path names, don't use PATH_MAX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210738
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 03:51:19 +0000 (03:51 +0000)]
Improve scheduling debug output
* haifa-sched.c (debug_ready_list): Remove unnecessary prototype.
(advance_one_cycle): Update.
(schedule_insn, queue_to_ready): Add debug printouts.
(debug_ready_list_1): New static function.
(debug_ready_list): Update.
(max_issue): Add debug printouts.
(dump_insn_stream): New static function.
(schedule_block): Use it. Also better indent printouts.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210737
138bc75d-0d04-0410-961f-
82ee72b054a4
mkuvyrkov [Thu, 22 May 2014 03:51:09 +0000 (03:51 +0000)]
Fix sched_insn debug counter
* haifa-sched.c (schedule_insn): Update.
(struct haifa_saved_data): Add nonscheduled_insns_begin.
(save_backtrack_point, restore_backtrack_point): Update.
(first_nonscheduled_insn): New static function.
(queue_to_ready, choose_ready): Use it.
(schedule_block): Init nonscheduled_insns_begin.
(sched_emit_insn): Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210736
138bc75d-0d04-0410-961f-
82ee72b054a4
kugan [Thu, 22 May 2014 02:25:01 +0000 (02:25 +0000)]
2014-05-22 Kugan Vivekanandarajah <kuganv@linaro.org>
* config/aarch64/aarch64.c (aarch64_regno_regclass) : Change CORE_REGS
to GENERAL_REGS.
(aarch64_secondary_reload) : LikeWise.
(aarch64_class_max_nregs) : Remove CORE_REGS.
* config/aarch64/aarch64.h (enum reg_class) : Remove CORE_REGS.
(REG_CLASS_NAMES) : Likewise.
(REG_CLASS_CONTENTS) : LikeWise.
(INDEX_REG_CLASS) : Change CORE_REGS to GENERAL_REGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210735
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 22 May 2014 00:17:32 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210733
138bc75d-0d04-0410-961f-
82ee72b054a4
fdumont [Wed, 21 May 2014 19:51:05 +0000 (19:51 +0000)]
2014-05-21 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/61143
* include/bits/hashtable.h: Fix move semantic to leave hashtable in a
usable state.
* testsuite/23_containers/unordered_set/61143.cc: New.
* testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210726
138bc75d-0d04-0410-961f-
82ee72b054a4
carrot [Wed, 21 May 2014 19:46:33 +0000 (19:46 +0000)]
* config/aarch64/arm_neon.h (vqdmulh_n_s16): Change the last operand's
constraint.
(vqdmulhq_n_s16): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210725
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Wed, 21 May 2014 19:30:25 +0000 (19:30 +0000)]
* config/rs6000/predicates.md (update_indexed_address_mem): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210724
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Wed, 21 May 2014 19:07:30 +0000 (19:07 +0000)]
PR sanitizer/61272
* ubsan.c (is_ubsan_builtin_p): Turn assert into a condition.
* g++.dg/ubsan/pr61272.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210723
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Wed, 21 May 2014 18:54:12 +0000 (18:54 +0000)]
PR c/61212
* files.c (find_file_in_dir): Add parens around &&.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210722
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 21 May 2014 17:23:07 +0000 (17:23 +0000)]
PR c++/61133
* lambda.c (build_capture_proxy, add_capture): Treat normal
captures and init-captures identically.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210720
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Wed, 21 May 2014 16:13:41 +0000 (16:13 +0000)]
2014-05-21 Martin Jambor <mjambor@suse.cz>
* doc/invoke.texi (Optimize Options): Document parameters
ipa-cp-eval-threshold, ipa-max-agg-items, ipa-cp-loop-hint-bonus and
ipa-cp-array-index-hint-bonus.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210718
138bc75d-0d04-0410-961f-
82ee72b054a4
mark [Wed, 21 May 2014 15:44:59 +0000 (15:44 +0000)]
PR debug/16063. Add DW_AT_type to DW_TAG_enumeration.
Add a new lang-hook that provides the underlying base type of an
ENUMERAL_TYPE. The default implementation will just use type_for_size.
The implementation for C++ will use the ENUM_UNDERLYING_TYPE if it exists.
Use this enum_underlying_base_type lang-hook in dwarf2out.c to add a
DW_AT_type base type reference to a DW_TAG_enumeration.
gcc/
* dwarf2out.c (gen_enumeration_type_die): Add DW_AT_type if DWARF
version >= 3 or not strict DWARF.
* langhooks.h (struct lang_hooks_for_types): Add
enum_underlying_base_type.
* langhooks.c (lhd_enum_underlying_base_type): New function.
* gcc/langhooks.h (struct lang_hooks_for_types): Add
enum_underlying_base_type.
* langhooks-def.h (lhd_enum_underlying_base_type): New declaration.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): New define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add new lang hook.
gcc/cp/
* cp-lang.c (cxx_enum_underlying_base_type): New function.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210717
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 21 May 2014 15:09:50 +0000 (15:09 +0000)]
* config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
Fix warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210716
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 21 May 2014 15:09:37 +0000 (15:09 +0000)]
PR libstdc++/61269
* include/std/type_traits: Move include outside namespace std.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210715
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Wed, 21 May 2014 14:45:36 +0000 (14:45 +0000)]
2014-05-21 Cesar Philippidis <cesar@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
PR lto/60179
gcc/testsuite/
* lib/scanasm.exp (scan-lto-assembler): New procedure.
* gcc.target/nios2/custom-fp-lto.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210714
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 21 May 2014 14:24:44 +0000 (14:24 +0000)]
2014-05-21 Richard Biener <rguenther@suse.de>
* doc/invoke.texi (-flto-partition=): Document one and
none algorithms.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210713
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:26:53 +0000 (13:26 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* layout.adb: Minor reformatting.
* sem_prag.adb (Analyze_Pragma, case Inspection_Point): Call
dummy procedure ip.
2014-05-21 Robert Dewar <dewar@adacore.com>
* restrict.ads (Implementation_Restriction): Add entry for
No_Fixed_IO.
* rtsfind.ads: Add entries for Fixed_IO and Decimal_IO in
Ada.[Wide_[Wide_]Text_IO.
* s-rident.ads (Restriction_Id): Add entry for No_Fixed_IO.
* sem_attr.adb (Analyze_Attribute): Disallow fixed point types
for Img, Image, Value, Wide_Image, Wide_Value, Wide_Wide_Image,
Wide_Wide_Value if restriction No_Fixed_IO is set.
* sem_util.adb (Set_Entity_Checks): Check restriction No_Fixed_IO.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210710
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:25:03 +0000 (13:25 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* gnatcmd.adb: Minor error msg changes (no upper case letter
at start).
* sem_ch12.adb, sem_ch5.adb, sem_res.adb, sem_util.adb: Minor
reformatting.
2014-05-21 Robert Dewar <dewar@adacore.com>
* debug.adb: Debug flag -gnatd.G inhibits static elab tracing
via generic formals.
* sem_elab.adb (Is_Call_Of_Generic_Formal): Return False if
-gnatd.G is set.
2014-05-21 Thomas Quinot <quinot@adacore.com>
* exp_pakd.adb (Revert_Storage_Order): Renamed from Byte_Swap to
more accurately describe that this subprogram needs to come into
play also in cases where no byte swapping is involved, because
it also takes care of some required shifts (left-justification
of values).
2014-05-21 Thomas Quinot <quinot@adacore.com>
* freeze.adb (Check_Component_Storage_Order): Indicate whether
a Scalar_Storage_Order attribute definition is present for the
component's type.
(Freeze_Record_Type): Suppress junk warnings
about purportedly junk Bit_Order / Scalar_Storage_Order attribute
definitions.
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb (Analyze_Subprogram_Renaming): Put back call
to Kill_Elaboration_Checks.
2014-05-21 Gary Dismukes <dismukes@adacore.com>
* layout.adb (Assoc_Add): Suppress the optimization of the (E
- C1) + C2 case, when the expression type is unsigned and C1 <
C2, to avoid creating a negative literal when folding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210709
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:21:38 +0000 (13:21 +0000)]
2014-05-21 Hristian Kirtchev <kirtchev@adacore.com>
* freeze.adb (Freeze_Record_Type): Update the use of
Is_SPARK_Volatile.
* sem_ch3.adb (Analyze_Object_Contract): Update the use of
Is_SPARK_Volatile.
(Process_Discriminants): Update the use of Is_SPARK_Volatile.
* sem_ch5.adb (Analyze_Iterator_Specification): Update the use
of Is_SPARK_Volatile.
(Analyze_Loop_Parameter_Specification):
Update the use of Is_SPARK_Volatile.
* sem_ch6.adb (Process_Formals): Catch an illegal use of an IN
formal parameter when its type is volatile.
* sem_prag.adb (Analyze_Global_Item): Update the use of
Is_SPARK_Volatile.
* sem_res.adb (Resolve_Entity_Name): Correct the guard which
determines whether an entity is a volatile source SPARK object.
* sem_util.adb (Has_Enabled_Property): Accout for external
properties being set on objects other than abstract states
and variables. An example would be a formal parameter.
(Is_SPARK_Volatile): New routine.
(Is_SPARK_Volatile_Object):
Remove the entity-specific tests. Call routine Is_SPARK_Volatile
when checking entities and/or types.
* sem_util.ads (Is_SPARK_Volatile): New routine.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210708
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:19:28 +0000 (13:19 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_warn.adb: Minor fix to warning messages (use ?? instead
of ?).
2014-05-21 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (GNATCmd): For platforms other than VMS, recognize
switch --version and --help.
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_elab.adb (Is_Call_Of_Generic_Formal): New function.
2014-05-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Iterator_Specification): Set type of
iterator variable when the domain of iteration is a formal
container and this is an element iterator.
2014-05-21 Bob Duff <duff@adacore.com>
* sem_ch12.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210707
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:17:41 +0000 (13:17 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sinfo.ads, sem_ch12.adb, sem_warn.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210706
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:14:06 +0000 (13:14 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_elab.adb: Minor reformatting.
* s-taprop.ads: Minor comment fix.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Remove call to
Kill_Elaboration_Checks.
* errout.adb, erroutc.adb: Minor reformatting.
2014-05-21 Thomas Quinot <quinot@adacore.com>
* exp_pakd.adb (Byte_Swap): Handle the case of a sub-byte
component. No byte swapping occurs, but this procedure also takes
care of appropriately justifying the argument.
2014-05-21 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch6.adb: sem_ch6.adb (Analyze_Aspects_On_Body_Or_Stub):
New routine.
(Analyze_Subprogram_Body_Helper): Move the
analysis of aspect specifications and the processing of the
subprogram body contract after inlining has taken place.
(Diagnose_Misplaced_Aspect_Specifications): Removed.
2014-05-21 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Build_Derived_Record_Type): Revert previous change.
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_eval.ads, sem_eval.adb (Why_Not_Static): Messages are not
continuations any more.
2014-05-21 Ed Schonberg <schonberg@adacore.com>
* sinfo.ads, sinfo.adb: New flag Needs_Initialized_Actual,
present in formal_Private_Definitions and on private extension
declarations of a formal derived type. Set when the use of the
formal type in a generic suggests that the actual should be a
fully initialized type.
* sem_warn.adb (May_Need_Initialized_Actual): new subprogram
to indicate that an entity of a generic type has default
initialization, and that the corresponing actual type in any
subsequent instantiation should be fully initialized.
* sem_ch12.adb (Check_Initialized_Type): new subprogram,
to emit a warning if the actual for a generic type on which
Needs_Initialized_Actual is set is not a fully initialized type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210705
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:08:13 +0000 (13:08 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_elab.adb, prj-dect.adb: Minor reformatting.
2014-05-21 Robert Dewar <dewar@adacore.com>
* erroutc.ads: Minor comment addition.
2014-05-21 Robert Dewar <dewar@adacore.com>
* errout.ads: Add documentation for use of >*> tag.
* restrict.adb: Make sure we use >*> tag for restriction warnings.
2014-05-21 Gary Dismukes <dismukes@adacore.com>
* debug.adb: Add case of illegal overriding_indicator for a
protected subprogram body to description of -gnatd.E switch.
* sem_ch6.adb (Verify_Overriding_Indicator): Issue error message
for cases of giving overriding_indicators on protected subprogram
bodies, but change this to a warning if -gnatd.E is enabled. No
longer give a style warning about missing indicators on protected
subprogram bodies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210704
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:04:54 +0000 (13:04 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* prj.ads, sem_ch12.adb, prj.adb, exp_pakd.adb,
sem_elab.ads: Minor reformatting.
* erroutc.adb, erroutc.ads (Warning_Specifically_Suppressed): Make Tag
parameter optional.
2014-05-21 Pascal Obry <obry@adacore.com>
* prj-dect.adb: Allow package Install in aggregate project.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210703
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 13:01:59 +0000 (13:01 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Aspect_Specifications):
Insert_Delayed_Pragma is now used for the case of Attach_Handler.
* sem_prag.adb: Minor comment improvements.
2014-05-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Install_Body): When checking whether freezing of
instantiation must be delayed, verify that the common enclosing
subprogram to generic and instance is in fact an overloadable
entity.
2014-05-21 Vincent Celier <celier@adacore.com>
* makeutl.adb (Mains.Complete_Mains.Do_Complete): Look for all
mains with the same name and fail if there is more than one.
* prj.ads, prj.adb (Find_All_Sources): New function
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210702
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:59:01 +0000 (12:59 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb: Minor reformatting.
* lib-xref-spark_specific.adb, sem_util.adb: Minor reformatting.
* sem_prag.adb: Minor error message improvement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210701
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:56:05 +0000 (12:56 +0000)]
2014-05-21 Yannick Moy <moy@adacore.com>
* lib-xref-spark_specific.adb, lib-xref.ads, lib-xref.adb
(Enclosing_Subprogram_Or_Package): Only return a library-level
package.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210700
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:54:18 +0000 (12:54 +0000)]
2014-05-21 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Build_Derived_Record_Type): Initialize Parent_Base
to the full view of the parent type when processing a derived type
which is the full view of a private type not defined in a generic
unit which is derived from a private type with discriminants
whose full view is a non-tagged record type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210699
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:49:24 +0000 (12:49 +0000)]
Previous change (rev 210697) should have mentioned PR ada/9535:
PR ada/9535
* g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
Provide a behaviour more consistent with underlying datagram
socket: do not attempt to loop over Send_Socket/Receive_Socket
iterating along the buffer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210698
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:45:44 +0000 (12:45 +0000)]
2014-05-21 Javier Miranda <miranda@adacore.com>
* exp_ch4.adb (Expand_Allocator_Expression.Apply_Accessibility_Check):
Complete previous patch.
2014-05-21 Thomas Quinot <quinot@adacore.com>
* g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
Provide a behaviour more consistent with underlying datagram
socket: do not attempt to loop over Send_Socket/Receive_Socket
iterating along the buffer.
2014-05-21 Hristian Kirtchev <kirtchev@adacore.com>
* freeze.adb (Freeze_Record_Type): Ensure that a discriminated
or a tagged type is not labelled as volatile. Ensure that a
non-volatile type has no volatile components.
* sem_ch3.adb (Analyze_Object_Contract): Add local constant
Obj_Typ. Code reformatting. Ensure that a discriminated or
tagged object is not labelled as volatile.
* sem_prag.adb (Process_Atomic_Shared_Volatile): Ensure that
pragma Volatile applies to a full type declaration or an object
declaration when SPARK mode is on.
2014-05-21 Sergey Rybin <rybin@adacore.com frybin>
* gnat_ugn.texi: For ASIS tools, reword the paragraph about
providing options needed for compiling the argument source for
the situation when a project file can be used as a tool parameter.
2014-05-21 Gary Dismukes <dismukes@adacore.com>
* gnat_rm.texi: Minor typo fix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210697
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:39:44 +0000 (12:39 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* stand.adb (Tree_Read): Read missing entities.
(Tree_Write): Write missing entities.
2014-05-21 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Wordsmithing edits to Coupling Metrics Control
section in gnatmetric chapter.
2014-05-21 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb (Expand_Actuals): Spec moved here, since not used
outside Exp_Ch6 (Expand_Actuals): Deal with proper insertion of
post-call copy write back (see detailed comment in code).
* exp_ch6.ads (Expand_Actuals): Moved to body, not used outside
Exp_Ch6.
* tbuild.ads: Minor reformatting.
2014-05-21 Robert Dewar <dewar@adacore.com>
* stand.ads: Add warning about adding new entities and
Tree_Read/Tree_Write.
2014-05-21 Robert Dewar <dewar@adacore.com>
* sem_util.adb (Set_Entity_With_Checks): Don't complain about
references to restricted entities within the units in which they
are declared.
2014-05-21 Robert Dewar <dewar@adacore.com>
* gnat1drv.adb (Check_Bad_Body): Use Source_File_Is_Body to
simplify the needed test, and also deal with failure to catch
situations with non-standard names.
* sinput-l.ads, sinput-l.adb (Source_File_Is_No_Body): New function
(Source_File_Is_Subunit): Removed, no longer used.
2014-05-21 Javier Miranda <miranda@adacore.com>
* exp_ch4.adb
(Expand_Allocator_Expression.Apply_Accessibility_Check): for a
renaming of an access to interface object there is no need to
generate extra code to reference the tag.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210696
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 12:35:51 +0000 (12:35 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* errout.adb, erroutc.adb, erroutc.ads: Allow warning tag in pragma
Warnings (Off, string).
2014-05-21 Robert Dewar <dewar@adacore.com>
* osint.adb: Fix three error messages to say invalid instead
of erroneous.
* par-ch4.adb, exp_aggr.adb, sem_attr.adb, sem_aux.adb, sem_ch3.adb,
sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_dim.adb, sem_res.adb,
sem_util.adb, sem_util.ads: Fix incorrect use of erroneous in comments.
2014-05-21 Ed Schonberg <schonberg@adacore.com>
* freeze.adb, sem_ch13.adb, sem_ch13.ads, sem_ch9.adb,
sem_ch9.ads: Move discriminant manipulation routines for analysis of
aspect specifications from sem_ch9 to sem_ch13, where they belong.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210695
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 21 May 2014 11:08:58 +0000 (11:08 +0000)]
2014-05-21 John Marino <gnugcc@marino.st>
gcc:
* config.gcc (*-*-dragonfly*): New target.
* configure.ac: Detect dl_iterate_phdr (*freebsd*, *dragonfly*).
* configure: Regenerate.
* config/dragonfly-stdint.h: New.
* config/dragonfly.h: New.
* config/dragonfly.opt: New.
* config/i386/dragonfly.h: New.
* ginclude/stddef.h: Detect _PTRDIFF_T_DECLARED for DragonFly.
include:
* liberty.h: Use basename function on DragonFly.
libcilkrts:
* runtime/os-unix.c (__DragonFly__): New target.
libgcc:
* config.host (*-*-dragonfly*): New target.
* crtstuff.c: Make dl_iterate_support generic on *bsd.
* enable-execute-stack-mprotect.c: Always mprotect on FreeBSD.
* unwind-dw2-fde-dip.c: Add dl_iterate_phr support for DragonFly.
* config/i386/dragonfly-unwind.h: New.
libitm:
* configure.tgt (*-*-dragonfly*): New target.
libstdc++-v3:
* acinclude.m4 (*-*-dragonfly*): New target.
* configure: Regenerate.
* configure.host (*-*-dragonfly*): New target.
* config/locale/dragonfly/c_locale.cc: New.
* config/locale/dragonfly/ctype_members.cc: New.
* config/os/bsd/dragonfly/ctype_base.h: New.
* config/os/bsd/dragonfly/ctype_configure_char.cc: New.
* config/os/bsd/dragonfly/ctype_inline.h: New.
* config/os/bsd/dragonfly/os_defines.h: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210694
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 21 May 2014 11:05:25 +0000 (11:05 +0000)]
2014-05-21 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Clearly document -gnatw.g (GNAT warnings).
Clearly document -gnatyg (GNAT style switches).
* usage.adb: Add line line for -gnatw.g (GNAT warnings) More
detail for line for -gnatyg (GNAT style switches) -gnatw.d/D is
available for VMS after all.
* warnsw.adb: Reorganize to eliminate duplicated code
(Restore_Warnings): Add a couple of missing entries
(Save_Warnings): Add a couple of missing entries.
* warnsw.ads: Add missing entries to Warning_Record (not clear
what the impact is).
2014-05-21 Robert Dewar <dewar@adacore.com>
* errout.adb (Set_Msg_Insertion_Warning): Handle ?*? (restriction
warning) case.
* errout.ads: Document ?*? (restriction warning) insertion.
* erroutc.adb (Get_Warning_Tag): Deal with ?*? (restriction
warning) case.
* erroutc.ads: Document use of * for restriction warning tag.
* restrict.adb (Restriction_Msg): Tag with ?*? instead of ??.
2014-05-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch9.adb (Push_Scope_And_Install_Discriminants): Do not
make discriminants immediately visible when analyzing an aspect
of a subtype declaration.
(Uninstall_Discriminants): Do not apply to the entity in a
subtype declaration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210693
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 21 May 2014 11:00:35 +0000 (11:00 +0000)]
gcc/
* tree.def (VOID_CST): New.
* tree-core.h (TI_VOID): New.
* tree.h (void_node): New.
* tree.c (tree_node_structure_for_code, tree_code_size)
(iterative_hash_expr): Handle VOID_CST.
(build_common_tree_nodes): Initialize void_node.
gcc/c-family/
* c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
* c-common.c (c_common_nodes_and_builtins): Don't initialize
void_zero_node.
* c-pretty-print.c (pp_c_void_constant): New function.
(c_pretty_printer::constant, c_pretty_printer::primary_expression)
(c_pretty_printer::expression): Handle VOID_CST.
* cilk.c (extract_free_variables): Likewise.
* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
(ubsan_instrument_vla): Use void_node instead of void_zero_node.
gcc/c/
* c-array-notation.c (expand_array_notations): Use void_node
instead of void_zero_node.
gcc/cp/
* cvt.c (convert_to_void): Use void_node instead of void_zero_node.
* cp-array-notation.c (replace_invariant_exprs): Likewise.
(expand_array_notation): Handle VOID_CST.
* error.c (dump_expr): Likewise.
* cxx-pretty-print.c (cxx_pretty_printer::primary_expression)
(cxx_pretty_printer::expression): Likewise.
(pp_cxx_new_expression): Use void_node instead of void_zero_node.
* decl.c (register_dtor_fn): Likewise.
* init.c (build_raw_new_expr, build_new_1, build_vec_init)
(build_delete, push_base_cleanups): Likewise.
* mangle.c (write_expression): Likewise.
* semantics.c (finish_break_stmt, empty_expr_stmt_p): Likewise.
* pt.c (tsubst_decl, tsubst_copy_and_build): Likewise.
(tsubst, tsubst_copy, build_non_dependent_expr): Handle VOID_CST.
* tree.c (cp_tree_equal): Likewise.
(build_dummy_object, is_dummy_object, stabilize_expr): Use void_node
instead of void_zero_node.
* typeck.c (check_return_expr): Likewise.
* typeck2.c (build_functional_cast): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210692
138bc75d-0d04-0410-961f-
82ee72b054a4