Jiong Wang
d18ba28414
[AArch64][TLSLE][2/3] Rename SYMBOL_TLSLE to SYMBOL_TLSLE24
...
2015-08-26 Jiong Wang <jiong.wang@arm.com>
gcc/
* config/aarch64/aarch64-protos.h (aarch64_symbol_type): Rename
SYMBOL_TLSLE to SYMBOL_TLSLE24.
* config/aarch64/aarch64.c (aarch64_load_symref_appropriately):
Likewise.
(aarch64_expand_mov_immediate): Likewise.
(aarch64_print_operand): Likewise.
(aarch64_classify_symbol): Likewise.
From-SVN: r227213
2015-08-26 13:01:56 +00:00
Jiong Wang
5eee3c3413
[AArch64][TLSLE][1/3] Add the option "-mtls-size"
...
2015-08-26 Jiong Wang <jiong.wang@arm.com>
gcc/
* config/aarch64/aarch64.opt (mtls-size): New entry.
* config/aarch64/aarch64.c (initialize_aarch64_tls_size): New function.
(aarch64_override_options_internal): Call initialize_aarch64_tls_size.
* doc/invoke.texi (AArch64 Options): Document -mtls-size.
From-SVN: r227212
2015-08-26 12:58:52 +00:00
Matthew Wahab
5e2d7d0d83
arm-cores.def: Add FL_FOR_ARCH flag for each ARM_CORE entry.
...
2015-08-26 Matthew Wahab <matthew.wahab@arm.com>
* gcc/config/arm/arm-cores.def: Add FL_FOR_ARCH flag for each
ARM_CORE entry. Fix some white-space.
* gcc/config/arm/arm.c: Remove FL_FOR_ARCH derivation from
ARM_CORE definition.
From-SVN: r227211
2015-08-26 12:55:15 +00:00
Francois-Xavier Coudert
ed019753cb
re PR fortran/29600 ([F03] MINLOC and MAXLOC take an optional KIND argument)
...
PR fortran/29600
* Makefile.am: Add generated/shape_i{1,2}.c
* Makefile.in: Regenerate.
* generated/shape_i1.c: New generated file.
* generated/shape_i2.c: New generated file.
* generated/shape_i4.c: Regenerate.
* generated/shape_i8.c: Regenerate.
* generated/shape_i16.c: Regenerate.
* gfortran.map (GFORTRAN_1.7): Add _gfortran_shape_{1,2}.
* m4/shape.m4: Fix parameter type.
* gfortran.dg/shape_8.f90: New test.
From-SVN: r227210
2015-08-26 12:37:42 +00:00
Francois-Xavier Coudert
485adf79b5
libgfortran.h (show_variables): Remove prototype.
...
* libgfortran.h (show_variables): Remove prototype.
* runtime/environ.c (print_spaces, var_source, show_integer,
show_boolean, show_sep, show_string): Remove functions.
* runtime/main.c (init): Remove dead code.
From-SVN: r227208
2015-08-26 06:34:05 +00:00
Naveen H.S
3540164033
fold-const.c (fold_binary_loc): Move Optimize root(x)*root(y) as root(x*y) to match.pd.
...
2015-08-26 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* fold-const.c (fold_binary_loc) : Move Optimize
root(x)*root(y) as root(x*y) to match.pd.
Move Optimize expN(x)*expN(y) as expN(x+y) to match.pd.
Move Optimize pow(x,y)*pow(x,z) as pow(x,y+z) to match.pd.
Move Optimize a/root(b/c) into a*root(c/b) to match.pd.
Move Optimize x/expN(y) into x*expN(-y) to match.pd.
* match.pd (mult (root:s @0) (root:s @1)): New simplifier.
(mult (POW:s @0 @1) (POW:s @0 @2)) : New simplifier.
(mult (exps:s @0) (exps:s @1)) : New simplifier.
(rdiv @0 (root:s (rdiv:s @1 @2))) : New simplifier.
(rdiv @0 (exps:s @1)) : New simplifier.
From-SVN: r227207
2015-08-26 03:39:17 +00:00
GCC Administrator
6031a5e32c
Daily bump.
...
From-SVN: r227206
2015-08-26 00:16:12 +00:00
Hans-Peter Nilsson
7ce9cf39a4
configure.ac: Only compile with -fPIC if the target supports it.
...
* configure.ac: Only compile with -fPIC if the target
supports it.
* configure: Regenerate.
From-SVN: r227203
2015-08-25 23:32:06 +00:00
Ian Lance Taylor
fd1b493945
compiler: Disallow use of unary ^ on booleans.
...
Fixes golang/go#11529 .
Reviewed-on: https://go-review.googlesource.com/13790
From-SVN: r227201
2015-08-25 23:05:15 +00:00
Joseph Myers
de26e2393a
Fix build for targets not defining EXTRA_SPECS.
...
* gcc.c (driver::finalize): Only assign to extra_specs if
[EXTRA_SPECS].
From-SVN: r227194
2015-08-25 22:20:49 +01:00
Ian Lance Taylor
387b37c1ac
compiler: Accept numeric literals with leading zeroes.
...
When a numeric literal with leading zeroes was seen in the parser, it
would only be accepted if it were a valid hex or octal literal. Any
invalid numeric literal would be split up into multiple tokens: the
valid hex/octal literal followed by the rest of the characters.
Instead, when scanning a numeric literal with leading zeroes, always
accept the number and give an appropriate error if the accepted number
does not fit in the expected base.
Fixes golang/go#11532 , golang/go#11533 .
Reviewed-on: https://go-review.googlesource.com/13791
From-SVN: r227193
2015-08-25 21:17:47 +00:00
Ian Lance Taylor
60c47c0073
compiler: Allow string slices with start index == length.
...
Avoid an off-by-one error when checking the start index of a string
slice by allowing the start index to be the string length instead
of the string length - 1.
Fixes golang/go#11522 .
Reviewed-on: https://go-review.googlesource.com/13030
From-SVN: r227191
2015-08-25 20:31:51 +00:00
Marek Polacek
c316b5e4f1
re PR middle-end/67330 (ICE handling weak attributes)
...
PR middle-end/67330
* varasm.c (declare_weak): Return after giving an error.
* c-common.c (handle_weak_attribute): Don't check whether the
visibility can be changed here.
* gcc.dg/weak/weak-18.c: New test.
From-SVN: r227190
2015-08-25 20:28:59 +00:00
François Dumont
630a286ab6
re PR libstdc++/60519 (Debug mode should check comparators for irreflexivity)
...
2015-08-24 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/60519
* include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering):
New enum entry.
* include/debug/functions.h (_Irreflexive_checker): New.
(__is_irreflexive, __is_irreflexive_pred): New.
* include/debug/macros.h
(__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New
macros.
(__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New
macros limited to post-C++11 mode.
* include/debug/debug.h
(__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred):
New macros, use latter.
(__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2):
Likewise.
* include/bits/stl_algo.h
(partial_sort_copy): Add irreflexive debug check.
(partial_sort_copy): Likewise.
(lower_bound): Likewise.
(upper_bound): Likewise.
(equal_range): Likewise.
(binary_search): Likewise.
(inplace_merge): Likewise.
(includes): Likewise.
(next_permutation): Likewise.
(prev_permutation): Likewise.
(is_sorted_until): Likewise.
(minmax_element): Likewise.
(partial_sort): Likewise.
(nth_element): Likewise.
(sort): Likewise.
(merge): Likewise.
(stable_sort): Likewise.
(set_union): Likewise.
(set_intersection): Likewise.
(set_difference): Likewise.
(set_symmetric_difference): Likewise.
(min_element): Likewise.
(max_element): Likewise.
* include/bits/stl_algobase.h
(lower_bound): Likewise.
(lexicographical_compare): Likewise.
* include/bits/stl_heap.h
(push_heap): Likewise.
(pop_heap): Likewise.
(make_heap): Likewise.
(sort_heap): Likewise.
(is_heap_until): Likewise.
* testsuite/25_algorithms/lexicographical_compare/debug/
irreflexive_neg.cc: New.
* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New.
* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
New.
From-SVN: r227189
2015-08-25 20:27:03 +00:00
David Malcolm
9376dd63e6
Support embedding the driver in-process within libgccjit
...
gcc/ChangeLog:
* gcc-main.c (main): Add params to driver ctor.
* gcc.c (class env_manager): New.
(env): New global.
(env_manager::init): New.
(env_manager::get): New.
(env_manager::xput): New.
(env_manager::restore): New.
Poison getenv and putenv.
(DEFAULT_TARGET_SYSTEM_ROOT): New.
(target_system_root): Update initialization to use
DEFAULT_TARGET_SYSTEM_ROOT.
(struct spec_list): Add field "default_ptr".
(INIT_STATIC_SPEC): Initialize new field "default_ptr".
(init_spec): Likewise.
(set_spec): Clear field "default_ptr".
(read_specs): Free "spec" and "buffer".
(xputenv): Reimplement in terms of env_manager.
(process_command): Replace ::getenv calls with calls to the
env_manager singleton.
(process_brace_body): Free string in three places.
(driver::driver): New.
(driver::~driver): New.
(used_arg): Convert from a function to...
(class used_arg_t): ...this class, and...
(used_arg): ...this new global instance.
(used_arg_t::finalize): New function.
(getenv_spec_function): Add "const" to local "value". Replace
::getenv call with call to the env_manager singleton.
(path_prefix_reset): New function.
(driver::finalize): New function.
* gcc.h (driver::driver): New.
(driver::~driver): New.
(driver::finalize): New.
gcc/jit/ChangeLog:
* docs/cp/topics/contexts.rst
(gccjit::context::set_bool_use_external_driver): New.
* docs/internals/test-hello-world.exe.log.txt: Update.
* docs/topics/compatibility.rst (LIBGCCJIT_ABI_5): New.
* docs/topics/contexts.rst
(gcc_jit_context_set_bool_use_external_driver): New.
* jit-common.h (enum inner_bool_option): Add
INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER.
* jit-playback.c (gcc_driver_name): New global.
(gcc:jit::playback::context::invoke_driver): Split out second
half into...
(gcc::jit::playback::context::invoke_embedded_driver): ...this new
function, and...
(gcc::jit::playback::context::invoke_external_driver): ...this new
function.
* jit-playback.h
(gcc::jit::playback::context::get_inner_bool_option): New.
(gcc::jit::playback::context::invoke_embedded_driver): New.
(gcc::jit::playback::context::invoke_external_driver): New.
* jit-recording.c (inner_bool_option_reproducer_strings):
Add entry for INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER.
* libgccjit++.h
(gccjit::context::set_bool_use_external_driver): New.
* libgccjit.c (gcc_jit_context_set_bool_use_external_driver): New.
* libgccjit.h (gcc_jit_context_set_bool_use_external_driver): New.
(LIBGCCJIT_HAVE_gcc_jit_context_set_bool_use_external_driver):
New.
* libgccjit.map (LIBGCCJIT_ABI_5): New.
* notes.txt: Show invocation of embedded copy of driver.
* docs/internals/test-hello-world.exe.log.txt: Update
gcc/testsuite/ChangeLog:
* jit.dg/test-error-pr63969-missing-driver.c: Add call to
gcc_jit_context_set_bool_use_external_driver.
From-SVN: r227188
2015-08-25 20:25:05 +00:00
François Dumont
25c65938c8
Revert my change to commit with PR reference again.
...
From-SVN: r227187
2015-08-25 20:22:47 +00:00
Nathan Sidwell
2f40eaca14
* gcc.c-torture/execute/builtins/20010124-1.x: New.
...
From-SVN: r227186
2015-08-25 20:06:13 +00:00
Nathan Sidwell
5a08165c8d
optabs.c (emit_indirect_jump): Don't try an emit a jump if the target doesn't have one.
...
* optabs.c (emit_indirect_jump): Don't try an emit a jump if the
target doesn't have one.
From-SVN: r227185
2015-08-25 19:43:02 +00:00
Ian Lance Taylor
25486c2827
compiler: Don't crash on erroneous array types.
...
Fixes golang/go#11546 .
Reviewed-on: https://go-review.googlesource.com/13795
From-SVN: r227184
2015-08-25 19:42:26 +00:00
Segher Boessenkool
f14e01090b
rs6000: Fix PR67346
...
"*ior<mode>_mask" is a define_insn_and_split, so it shouldn't use
can_create_pseudo in its instruction condition, because IRA can then
create such an instruction, and the condition becomes false before
the insn is split. Use a scratch instead.
2015-08-25 Segher Boessenkool <segher@kernel.crashing.org>
PR target/67346
* config/rs6000/rs6000.md (*ior<mode>_mask): Use a match_scratch.
From-SVN: r227183
2015-08-25 21:35:15 +02:00
Segher Boessenkool
b733687e96
rs6000: Fix PR67344
...
The "*and<mode>3_imm_dot_shifted" pattern is a define_insn_and_split,
like most "dot" patterns: if its output is not assigned cr0 but some
other cr reg, it splits to a non-dot insn and a compare.
Unfortunately that non-dot insn will clobber cr0 as well. We could
add another clobber (with "=X,x"), but then that second alternative
is never useful; instead, just remove that second alternative.
2015-08-25 Segher Boessenkool <segher@kernel.crashing.org>
PR target/67344
* config/rs6000/rs6000.md (*and<mode>3_imm_dot_shifted): Change to
a define_insn, remove second alternative.
From-SVN: r227182
2015-08-25 21:32:28 +02:00
Francois-Xavier Coudert
693ac2ab35
unit.c (get_internal_unit): Make default sign mode unspecified.
...
* io/unit.c (get_internal_unit): Make default sign mode unspecified.
(init_units): Make default sign mode unspecified.
From-SVN: r227178
2015-08-25 16:27:43 +00:00
Nathan Sidwell
0c308f5980
20001117-1.c: Needs return_address.
...
* gcc.dg/20001117-1.c: Needs return_address.
* gcc.dg/20020415-1.c: Needs alloca.
* gcc.dg/graphite/id-pr44676.c: Needs profiling.
* gcc.dg/graphite/pr60979.c: Needs nonlocal_goto
* gcc.dg/pr63186.c: Needs label_values.
* gcc.dg/torture/pr33848.c: Likwise.
* lib/target-supports.exp (check_effective_target_fopenacc,
check_effective_target_fopenmp): Disable for nvptx.
* gcc.dg/graphite/run-id-pr47653.c: Disable for nvptx.
* gcc.dg/stack-usage-1.c: Likewise.
* gcc.dg/stack-usage-2.c: Likewise.
* gcc.dg/unused-5.c: Likewise.
* gcc.dg/unwind-1.c: Likewise.
From-SVN: r227177
2015-08-25 16:22:42 +00:00
Francois-Xavier Coudert
a139f28147
* libgfortran.h (check_buffered): Remove unused prototype.
...
From-SVN: r227174
2015-08-25 15:26:02 +00:00
Thomas Schwinge
db8d09191c
Expand comment on struct switchstr.
...
This patch, extracted from a larger change on gomp-4_0-branch, expands
a comment documenting struct switchstr in gcc.c.
2015-08-25 Thomas Schwinge <thomas@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* gcc.c (struct switchstr): Expand comment.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r227173
2015-08-25 15:53:24 +01:00
Nathan Sidwell
1fe6befc36
nvptx.c (nvptx_write_function_decl): Reformat.
...
* config/nvptx/nvptx.c (nvptx_write_function_decl): Reformat.
(nvptx_reorg_subreg): Pass insn pattern to asm_operands.
From-SVN: r227169
2015-08-25 14:06:39 +00:00
Richard Biener
e4cdf6a8c5
re PR tree-optimization/67306 (Patterns ICEs when moved using "simplify and match")
...
2015-08-25 Richard Biener <rguenther@suse.de>
PR middle-end/67306
* genmatch.c (expr::gen_transform): Verify the result of
builtin_decl_implicit.
(dt_simplify::gen_1): Likewise.
From-SVN: r227163
2015-08-25 10:29:09 +00:00
Thomas Preud'homme
e36dbdfe55
constraints.md: Also list Cs and US ARM-specific constraints as used.
...
2015-08-25 Thomas Preud'homme <thomas.preudhomme@arm.com>
* config/arm/constraints.md: Also list Cs and US ARM-specific
constraints as used.
From-SVN: r227162
2015-08-25 08:50:53 +00:00
Christian Bruel
d5ef2c2109
gcc.dg/Wno-frame-address.c: Skip for ARM.
...
g++.dg/Wno-frame-address.C: Ditto.
From-SVN: r227161
2015-08-25 09:49:54 +02:00
Ian Lance Taylor
e3552bf9f0
compiler: Type check params in sink function decl.
...
When a function is declared and named with the blank identifier, only
the syntax is checked. This patch modifies the parser to add a dummy
node for each function declaration with a blank identifier name that
will be type checked like any function declaration.
Fixes golang/go#11535 .
Reviewed-on: https://go-review.googlesource.com/13792
From-SVN: r227160
2015-08-25 03:48:35 +00:00
GCC Administrator
cd0fea2ba9
Daily bump.
...
From-SVN: r227159
2015-08-25 00:16:11 +00:00
Kaz Kojima
fbce972ab3
re PR target/66609 ([sh] Relative address expressions bind at as-time, even if symbol is weak)
...
PR target/66609
* [SH] Take into account weak symbols for pc relative calls/sibcalls.
From-SVN: r227155
2015-08-24 23:23:00 +00:00
Aditya Kumar
2a611178d5
Specify the type of scop->region
...
Changing the type of scop::region from void* to sese, as this is
the only type assigned to scop::region for now. No functional changes intended.
Passes regtest and bootstrap.
gcc/ChangeLog:
2015-08-17 Aditya Kumar <aditya.k7@samsung.com>
* graphite-poly.c: Change type of region from void* to sese.
* graphite-poly.h (struct scop): Changing the type of scop::region
from void* to sese. Change accessor macro accordingly.
* graphite-sese-to-poly.c (extract_affine_chrec): Use accessor macro.
From-SVN: r227151
2015-08-24 20:53:51 +00:00
Aditya Kumar
9ead801e4d
Constrain only on INTEGER_TYPE
...
Passes bootstrap, no regressions.
With this patch gcc bootstraps with graphite.
make BOOT_CFLAGS="-g -O2 -fgraphite-identity -floop-interchange -floop-block"
gcc/ChangeLog:
2015-08-12 Aditya Kumar <hiraditya@msn.com>
* graphite-scop-detection.c (stmt_simple_for_scop_p):
Constrain only on INTEGER_TYPE
From-SVN: r227150
2015-08-24 20:50:12 +00:00
François Dumont
41e4e5edce
formatter.h (_Debug_msg_id::__msg_irreflexive_ordering): New enum entry.
...
2015-08-24 François Dumont <fdumont@gcc.gnu.org>
* include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering):
New enum entry.
* include/debug/functions.h (_Irreflexive_checker): New.
(__is_irreflexive, __is_irreflexive_pred): New.
* include/debug/macros.h
(__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New
macros.
(__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New
macros limited to post-C++11 mode.
* include/debug/debug.h
(__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred):
New macros, use latter.
(__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2):
Likewise.
* include/bits/stl_algo.h
(partial_sort_copy): Add irreflexive debug check.
(partial_sort_copy): Likewise.
(lower_bound): Likewise.
(upper_bound): Likewise.
(equal_range): Likewise.
(binary_search): Likewise.
(inplace_merge): Likewise.
(includes): Likewise.
(next_permutation): Likewise.
(prev_permutation): Likewise.
(is_sorted_until): Likewise.
(minmax_element): Likewise.
(partial_sort): Likewise.
(nth_element): Likewise.
(sort): Likewise.
(merge): Likewise.
(stable_sort): Likewise.
(set_union): Likewise.
(set_intersection): Likewise.
(set_difference): Likewise.
(set_symmetric_difference): Likewise.
(min_element): Likewise.
(max_element): Likewise.
* include/bits/stl_algobase.h
(lower_bound): Likewise.
(lexicographical_compare): Likewise.
* include/bits/stl_heap.h
(push_heap): Likewise.
(pop_heap): Likewise.
(make_heap): Likewise.
(sort_heap): Likewise.
(is_heap_until): Likewise.
* testsuite/25_algorithms/lexicographical_compare/debug/
irreflexive_neg.cc: New.
* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New.
* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
New.
From-SVN: r227147
2015-08-24 20:21:57 +00:00
Ulrich Weigand
1b533361da
configure.ac: Set have_mmap to no on spu-*-* targets.
...
* configure.ac: Set have_mmap to no on spu-*-* targets.
* configure: Regenerate.
From-SVN: r227145
2015-08-24 18:48:28 +00:00
Michael Meissner
74457d003e
re PR target/67211 (ICE (insn does not satisfy its constraints) on powerpc64le-linux-gnu)
...
[gcc]
2015-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/67211
* config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Set
-mefficient-unaligned-vsx on ISA 2.7.
* config/rs6000/rs6000.opt (-mefficient-unaligned-vsx): Convert
option to a masked option.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Rework
logic for -mefficient-unaligned-vsx so that it is set via an arch
ISA option, instead of being set if -mtune=power8 is set. Move
-mefficient-unaligned-vsx and -mallow-movmisalign handling to be
near other default option handling.
[gcc/testsuite]
2015-08-24 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/67211
* g++.dg/pr67211.C: New test.
From-SVN: r227144
2015-08-24 18:43:02 +00:00
Richard Sandiford
58d745ec90
genflags.c (gen_macro): Delete.
...
gcc/
* genflags.c (gen_macro): Delete.
(gen_proto): Don't create GEN.*CALL.* macros.
* gensupport.h (get_file_location): Declare.
* gensupport.c (rtx_locs): New variable.
(read_md_rtx): Record rtx locations.
(get_file_location): New function.
* target-insns.def (call, call_pop, call_value, call_value_pop)
(sibcall, sibcall_value): New patterns.
* gentarget-def.c (parse_argument): New function.
(def_target_insn): Use it. Handle optional operands. Raise an
error if an .md pattern has the wrong number of operands for the
pattern name. Remove the names of unused operands from the prototype.
* builtins.c (expand_builtin_apply): Use targetm functions
instead of HAVE_call_value and GEN_CALL_VALUE.
* calls.c (emit_call_1): Likewise. Remove support for sibcall_pop
and sibcall_value_pop.
* config/aarch64/aarch64.md (untyped_call): Use gen_call instead
of GEN_CALL.
* config/alpha/alpha.md (untyped_call): Likewise.
* config/iq2000/iq2000.md (untyped_call): Likewise.
* config/m68k/m68k.md (untyped_call): Likewise.
* config/mips/mips.md (untyped_call): Likewise.
* config/pa/pa.md (untyped_call): Likewise.
* config/rs6000/rs6000.md (untyped_call): Likewise.
* config/sparc/sparc.md (untyped_call): Likewise.
* config/tilegx/tilegx.md (untyped_call): Likewise.
* config/tilepro/tilepro.md (untyped_call): Likewise.
* config/visium/visium.md (untyped_call): Likewise.
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Use
gen_call_value instead of GEN_CALL_VALUE.
* config/arm/arm.md (untyped_call): Likewise.
* config/cr16/cr16.c (cr16_function_arg): Remove reference to
GEN_CALL.
From-SVN: r227143
2015-08-24 17:59:51 +00:00
Richard Sandiford
651159e5d6
ifcvt.c (HAVE_incscc, [...]): Delete.
...
gcc/
* ifcvt.c (HAVE_incscc, HAVE_decscc, HAVE_cbranchcc4): Delete.
(have_cbranchcc4): New variable.
(cc_in_cond, noce_emit_cmove, noce_get_alt_condition)
(noce_get_condition): Use it instead of HAVE_cbranchcc4.
(if_convert): Initialize have_cbranchcc4.
From-SVN: r227142
2015-08-24 17:59:31 +00:00
Richard Sandiford
7f9f48bede
builtins.c (expand_cmpstrn): Rename to...
...
gcc/
* builtins.c (expand_cmpstrn): Rename to...
(expand_cmpstrn_or_cmpmem): ...this.
(expand_builtin_strcmp, expand_builtin_strncmp): Update accordingly.
(expand_builtin_memcmp): Use optabs instead of HAVE_cmpmem/gen_cmpmem.
Remove mode argument.
(expand_builtin): Update accordingly.
From-SVN: r227141
2015-08-24 17:59:19 +00:00
Richard Sandiford
a666df609a
builtins.c (expand_cmpstr, [...]): New functions.
...
gcc/
* builtins.c (expand_cmpstr, expand_cmpstrn): New functions.
(expand_builtin_strcmp, expand_builtin_strncmp): Use them. Remove
references to HAVE_cmpstr{,n}si and CODE_FOR_cmpstr{,n}si.
* config/m32c/blkmov.md (cmpstrsi): Fix predicates of operands 1 and 2.
Add predicates for operands 0 and 3.
* config/rx/rx.md (cmpstrnsi): Remove force_operand for the length
operand.
* config/sh/sh.md (cmpstrnsi): Change the length predicate from
immediate_operand to nonmemory_operand.
From-SVN: r227140
2015-08-24 17:59:07 +00:00
Richard Sandiford
762613be3e
df-scan.c (df_insn_info_init_fields): New function, split out from...
...
gcc/
* df-scan.c (df_insn_info_init_fields): New function, split out
from...
(df_insn_create_insn_record): ...here.
(df_insn_info_free_fields): New function, split out from...
(df_insn_info_delete): ...here.
(df_insn_rescan): Use the new functions instead of freeing and
reallocating the df_insn_info.
From-SVN: r227139
2015-08-24 17:58:42 +00:00
Francois-Xavier Coudert
50b43b866a
* doc/install.texi (Binaries): Remove links no longer valid.
...
From-SVN: r227138
2015-08-24 17:52:34 +00:00
Nathan Sidwell
2a21ff193a
libgomp.map: Add 4.0.2 version.
...
libgomp/
* libgomp.map: Add 4.0.2 version.
* target.c (offload_image_descr): Add version field.
(gomp_load_image_to_device): Add version argument. Adjust plugin
call. Improve load mismatch diagnostic.
(gomp_unload_image_from_device): Add version argument. Adjust plugin
call.
(GOMP_offload_regster): Make stub function, move bulk to ...
(GOMP_offload_register_ver): ... here. Process version argument.
(GOMP_offload_unregister): Make stub function, move bulk to ...
(GOMP_offload_unregister_ver): ... here. Process version argument.
(gomp_init_device): Process version field.
(gomp_unload_device): Process version field.
(gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
macros. Check plugin version.
* libgomp.h (gomp_device_descr): Add version function field. Adjust
loader and unloader types.
* oacc-host.c: Include gomp-constants.h.
(host_version): New.
(host_load_image, host_unload_image): Adjust.
(host_dispatch): Add host_version.
* plugin/plugin-nvptx.c: Include gomp-constants.h.
(GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg and check it.
(GOMP_OFFLOAD_unload_image): Likewise.
* plugin/plugin-host.c: Include gomp-constants.h.
(GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg.
(GOMP_OFFLOAD_unload_image): Likewise.
liboffloadmic/
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg and check it.
(GOMP_OFFLOAD_unload_image): Likewise.
include/
* gomp-constants.h (GOMP_VERSION, GOMP_VERSION_NVIDIA_PTX,
GOMP_VERSION_INTEL_MIC): New.
(GOMP_VERSION_PACK, GOMP_VERSION_LIB, GOMP_VERSION_DEV): New.
gcc/
* config/nvptx/mkoffload.c (process): Replace
GOMP_offload_{,un}register with GOMP_offload_{,un}register_ver.
From-SVN: r227137
2015-08-24 17:10:06 +00:00
Francois-Xavier Coudert
5cdf54b765
re PR libfortran/57496 (I/O: WRITE(*,*) HUGE(0._10) gives SIGFPE with -ffpe-trap=overflow)
...
PR libfortran/57496
* io/write_float.def: Use built-in type-generic functions defined
by libgfortran.h for isfinite, isnan, and signbit.
From-SVN: r227136
2015-08-24 16:31:47 +00:00
Louis Krupp
9f7ba2088e
re PR fortran/62536 (ICE (segfault) for invalid END BLOCK statement)
...
PR fortran/62536
PR fortran/66175
* decl.c (gfc_match_end): Clean up nested BLOCKs.
* parse.c (parse_block_construct): Deal gracefully with cleaned-up
BLOCKs.
* gfortran.dg/block_end_error_1.f90: New test.
* gfortran.dg/blocks_nested_incomplete_1.f90: New test.
From-SVN: r227135
2015-08-24 16:29:59 +00:00
Marek Polacek
2021ff273d
re PR tree-optimization/67284 (libgo fails to build on trunk r227015 / *-linux-gnu)
...
PR tree-optimization/67284
* go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter.
Set TREE_THIS_VOLATILE.
(Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call.
Pass false to the rest of define_builtin calls.
From-SVN: r227134
2015-08-24 16:06:02 +00:00
H.J. Lu
76eed9d920
Add a testcase for PR target/66821
...
PR target/66821
* gcc.target/i386/pr66821.c: New test.
From-SVN: r227133
2015-08-24 08:31:02 -07:00
H.J. Lu
03541b0d44
Update MOVE_RATIO cost for IA MCU
...
This patch updates MOVE_RATIO cost for IA MCU from 6 to 9 so that we
can unroll the loop completely for DOM with -mtune=iamcu.
gcc/
PR target/67329
* config/i386/i386.c (iamcu_cost): Set MOVE_RATIO cost to 9.
gcc/testsuite/
PR target/67329
* gcc.target/i386/pr67329.c: New test.
From-SVN: r227132
2015-08-24 08:24:44 -07:00
Tom de Vries
1358a74795
Add libgomp.oacc-c-c++-common/vector-loop.c
...
2015-08-24 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/65468
* testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
From-SVN: r227130
2015-08-24 15:01:44 +00:00