eager [Tue, 28 Sep 2010 18:58:54 +0000 (18:58 +0000)]
Add self to MAINTAINERS for MicroBlaze CPU port.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164697
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 28 Sep 2010 18:24:54 +0000 (18:24 +0000)]
* config/i386/i386.c (ix86_supports_split_stack): Test
HAVE_GAS_CFI_PERSONALITY_DIRECTIVE rather than
dwarf2out_do_cfi_asm.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164696
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 28 Sep 2010 18:22:13 +0000 (18:22 +0000)]
PR target/45815
* opts.c (decode_options): Don't test whether the target supports
split stack if flag_split_stack == 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164695
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Tue, 28 Sep 2010 17:58:55 +0000 (17:58 +0000)]
In gcc/objc/:
2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-08-23 Stuart Hastings <stuart@apple.com>
Ziemowit Laski <zlaski@apple.com>
Radar 4209854
* objc-act.c (objc_decay_parm_type): New function.
(get_arg_type_list): Decay types for all named arguments.
(objc_push_parm): Rebuild the PARM_DECL if its type has
been decayed.
In gcc/testsuite/:
2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers (test method-20.m
from the branch renamed to method-20b.m to avoid clashes).
2005-08-23 Stuart Hastings <stuart@apple.com>
Ziemowit Laski <zlaski@apple.com>
Radar 4209854
* obj-c++.dg/method-23.mm: New.
* objc.dg/method-20.m: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164694
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Tue, 28 Sep 2010 17:39:43 +0000 (17:39 +0000)]
In gcc/objc/:
2010-09-28 Nicola Pero <nicola@nicola.brainstorm.co.uk>
* objc-act.c (encode_type): Fixed encoding enums with the next
runtime.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164693
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 28 Sep 2010 16:34:36 +0000 (16:34 +0000)]
* builtin-attrs.def (ATTR_LEAF): New attribute.
(ATTR_NOVOPS_LEAF_LIST, ATTR_LEAF_LIST, ATTR_NOTHROW_LEAF_LIST,
ATTR_CONST_NOTHROW_LEAF_LIST, ATTR_PURE_NOTHROW_LEAF_LIST,
ATTR_PURE_NOTHROW_NOVOPS_LEAF_LIST, ATTR_NORETURN_NOTHROW_LEAF_LIST,
ATTR_MALLOC_NOTHROW_LEAF_LIST, ATTR_SENTINEL_NOTHROW_LEAF_LIST,
ATTR_NOTHROW_NONNULL_LEAF, ATTR_CONST_NOTHROW_NONNULL_LEAF,
ATTR_CONST_NOTHROW_TYPEGENERIC_LEAF, ATTR_PURE_NOTHROW_NONNULL_LEAF,
ATTR_MALLOC_NOTHROW_NONNULL_LEAF): New attribute lists.
* sync-builtins.def: Annotate all builtins by leaf.
* omp-builtins.def: Annotate all builtins by leaf.
* builtins.def: Annotate relevant builtins with leaf attribute.
(ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
ATTR_MATHFN_FPROUNDING_ERRNO, ATTR_MATHFN_FPROUNDING_STORE): Make
leaf.
* gcc-interface/utils.c (handle_leaf_attribute): New function.
(gnat_internal_attribute_tables): Add leaf.
* lto-lang.c (handle_leaf_attribute): New function.
(lto_attribute_tables): Add leaf.
* f95-lang.c (gfc_define_builtin): Make leaf.
(gfc_init_builtin_functions): Handle only ATTR_CONST_NOTHROW_LEAF_LIST
and ATTR_NOTHROW_LEAF_LIST.
(DEF_SYNC_BUILTIN): Check ATTR_CONST_NOTHROW_LEAF_LIST.
(DEF_GOMP_BUILTIN): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164689
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 28 Sep 2010 16:28:39 +0000 (16:28 +0000)]
* tree-ssa-ccp.c (fold_ctor_reference): New function.
(fold_const_aggregate_ref): Use it.
* fold-const.c (canonicalize_constructor_val): Check that we don't fold
into external static.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164688
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 28 Sep 2010 16:24:11 +0000 (16:24 +0000)]
gcc/testsuite:
PR target/44452
* gcc.target/i386/pr22076.c: Add -mno-vect8-ret-in-mem on
i?86-*-solaris2.[89], *-*-vxworks*.
* gcc.target/i386/pr22152.c: Likewise.
* gcc.target/i386/vect8-ret.c: New test.
gcc:
PR target/44452
* config/i386/i386.opt (mvect8-ret-in-mem): Define.
* config/i386/i386.c (ix86_target_string): Handle -mvect8-ret-in-mem.
(ix86_solaris_return_in_memory): Remove.
* config/i386/i386-protos.h (ix86_solaris_return_in_memory): Remove.
* config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove.
(TARGET_SUBTARGET_DEFAULT): Redefine.
* config/i386/sol2-10.h (TARGET_SUBTARGET_DEFAULT): Update comment.
* config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Remove.
(TARGET_SUBTARGET_DEFAULT): Redefine.
* doc/invoke.texi (Option Summary, i386 and x86-64 Options): Add
-mvect8-ret-in-mem.
(i386 and x86-64 Options): Document -mvect8-ret-in-mem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164687
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Tue, 28 Sep 2010 15:33:56 +0000 (15:33 +0000)]
2010-09-28 Tobias Burnus <burnus@net-b.de>
PR fortran/45756
* trans-decl.c (gfc_get_symbol_decl): Use gsym for decl of
module parameters.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164686
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Tue, 28 Sep 2010 15:25:03 +0000 (15:25 +0000)]
PR target/45807
* config/rs6000/aix.h (SETUP_FRAME_ADDRESSES): Delete.
* config/rs6000/linux64.h (SETUP_FRAME_ADDRESSES): Delete.
* config/rs6000/rs6000-protos.h (rs6000_aix_emit_builtin_unwind_init):
Delete.
* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init): Delete.
(rs6000_emit_prologue): Don't just create frame save info for r2,
actually save r2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164685
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 28 Sep 2010 15:20:16 +0000 (15:20 +0000)]
* config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Output 8 bytes
when 8 bytes are requested.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164684
138bc75d-0d04-0410-961f-
82ee72b054a4
jiez [Tue, 28 Sep 2010 15:10:17 +0000 (15:10 +0000)]
* gcc.dg/Wcxx-compat-12.c: Add -fno-short-enums.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164683
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 28 Sep 2010 10:35:53 +0000 (10:35 +0000)]
2010-09-28 Matt Austern <austern@google.com>
* testsuite/20_util/hash/chi2_quality.cc: New.
* testsuite/20_util/hash/quality.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164682
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Tue, 28 Sep 2010 10:20:11 +0000 (10:20 +0000)]
In gcc/objc/:
2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-07-18 Ziemowit Laski <zlaski@apple.com>
Radar 4175534
* objc-act.c (objc_compare_types): A new silent comparison
mode (-4), differing from regular comparison (-3) in that
'false' is returned instead of issuing warnings.
In gcc/testsuite/:
2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-07-18 Ziemowit Laski <zlaski@apple.com>
Radar 4175534
* obj-c++.dg/method-22.mm: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164681
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Tue, 28 Sep 2010 09:54:51 +0000 (09:54 +0000)]
In gcc/objc/:
2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (encode_type): Do not add 'r' with the next runtime.
(encode_aggregate_within): Reorganized code to be more readable.
(encode_aggregate_fields): Updated second argument to be 'bool'
instead of 'int'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164680
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Tue, 28 Sep 2010 09:54:27 +0000 (09:54 +0000)]
2010-09-27 Andrew Haley <aph@redhat.com>
PR java/45773
* jvgenmain.c (main): Fix arg processing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164679
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Tue, 28 Sep 2010 08:32:32 +0000 (08:32 +0000)]
2010-09-28 Tristan Gingold <gingold@adacore.com>
* config/avr/avr.c (expand_prologue): Set
current_function_static_stack_size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164678
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Tue, 28 Sep 2010 07:50:02 +0000 (07:50 +0000)]
2010-09-28 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.md: Change the initial condition of the
probing loop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164677
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 28 Sep 2010 06:11:05 +0000 (06:11 +0000)]
* config/i386/sse.md (*avx_<umaxmin:code><mode>3):
Split from *avx_<maxmin:code><mode>3.
(*avx_<smaxmin:code><mode>3): Ditto.
* config/i386/i386.md (maxmin): Remove code iterator.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164676
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 28 Sep 2010 00:18:01 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164675
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 28 Sep 2010 00:07:12 +0000 (00:07 +0000)]
gcc/:
* config/i386/i386.c (ix86_supports_split_stack): -fsplit-stack
requires assembler support for CFI directives.
libgcc/:
* configure.ac: Test whether assembler supports CFI directives.
* config.host: Only add t-stack and i386/t-stack-i386 to
tmake_file if libgcc_cv_cfi is "yes".
* configure: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164671
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 27 Sep 2010 21:29:46 +0000 (21:29 +0000)]
* dwarf2out.c (dwarf2out_cfi_label): Use ASM_OUTPUT_DEBUG_LABEL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164670
138bc75d-0d04-0410-961f-
82ee72b054a4
rwild [Mon, 27 Sep 2010 20:19:41 +0000 (20:19 +0000)]
Fix unportable shell quoting.
/:
PR bootstrap/44621
* configure.ac: Fix unportable shell quoting.
* configure: Regenerate.
config/:
* po.m4 (AM_PO_SUBDIRS): Fix unportable shell quoting.
contrib/reghunt/:
* bin/gcc-svn-ids: Fix unportable shell quoting.
* date_based/reg_periodic: Likewise.
* date_based/reg_search: Likewise.
intl/:
PR bootstrap/44621
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164668
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Mon, 27 Sep 2010 20:10:34 +0000 (20:10 +0000)]
Fixed typo in my last commit which would break bootstrap
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164667
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 27 Sep 2010 20:05:34 +0000 (20:05 +0000)]
Require lvalues as specified by the standard.
* typeck.c (lvalue_or_else): Use real_lvalue_p.
(cp_build_addr_expr_1): Split out of cp_build_unary_op.
(cp_build_addr_expr, cp_build_addr_expr_strict): Interfaces.
(decay_conversion, get_member_function_from_ptrfunc): Adjust.
(build_x_unary_op, build_reinterpret_cast_1): Adjust.
(build_const_cast_1): Adjust.
* cp-tree.h: Declare new fns.
* call.c (build_this, convert_like_real, build_over_call): Adjust.
(initialize_reference): Adjust.
* class.c (build_base_path, convert_to_base_statically): Adjust.
(build_vfn_ref, resolve_address_of_overloaded_function): Adjust.
* cvt.c (build_up_reference, convert_to_reference): Adjust.
* decl.c (register_dtor_fn): Adjust.
* decl2.c (build_offset_ref_call_from_tree): Adjust.
* except.c (initialize_handler_parm): Adjust.
* init.c (build_offset_ref, build_delete, build_vec_delete): Adjust.
* rtti.c (build_dynamic_cast_1, tinfo_base_init): Adjust.
* tree.c (stabilize_expr): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164666
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Mon, 27 Sep 2010 20:04:24 +0000 (20:04 +0000)]
Added line in ChangeLog entry that I forgot to commit in the last commit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164665
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Mon, 27 Sep 2010 19:56:32 +0000 (19:56 +0000)]
* emit-rtl.c (reorder_insns_nobb) [ENABLE_CHECKING]: Sanity-check
that AFTER is not in the range FROM..TO, inclusive.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164664
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Mon, 27 Sep 2010 19:55:29 +0000 (19:55 +0000)]
PR rtl-optimization/45792
* cfgcleanup.c (try_head_merge_bb): New rtx vector nextptr.
If not all insns are to be merged, for each edge, stash the
next candidate after the to-be-merged insns before doing the
merge, and use them for the retry at the new insertion point.
Handle CC0 targets when retrying.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164663
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 27 Sep 2010 19:48:20 +0000 (19:48 +0000)]
gcc/:
* common.opt (fsplit-stack): New option.
* opts.c (decode_options): Set flag_split_stack to final value.
* target.def (supports_split_stack): New hook.
* gcc.c (STACK_SPLIT_SPEC): Define.
(LINK_COMMAND_SPEC): Use STACK_SPLIT_SPEC.
* doc/invoke.texi (Option Summary): Mention -fsplit-stack.
(Code Gen Options): Document -fsplit-stack.
* doc/extend.texi (Function Attributes): Mention no_split_stack.
(Function Attributes): Document no_split_stack.
* doc/tm.texi.in (Stack Smashing Protection): Add @hook
TARGET_SUPPORTS_SPLIT_STACK.
* doc/tm.texi: Rebuild.
* function.c (thread_prologue_and_epilogue_insns): If
flag_split_stack, add split stack prologue.
* explow.c (allocate_dynamic_stack_space): Support -fsplit-stack.
* varasm.c (saw_no_split_stack): New static variable.
(assemble_start_function): Set saw_no_split_stack if the function
has the no_split_stack attribute.
(file_end_indicate_split_stack): New function.
* output.h (file_end_indicate_split_stack): Declare.
* libgcc-std.ver (GCC_4.6.0): Add -fsplit-stack support variables
and function.
* doc/libgcc.texi (Miscellaneous routines): Document -fsplit-stack
routines.
* config/i386/i386.c (ix86_option_override_internal): Don't set
expand_builtin_va_start to NULL if -fsplit-stack.
(ix86_function_regparm): Reduce local regparm by 1 for 32-bit
-fsplit-stack.
(ix86_va_start): If -fsplit-stack, get overflow pointer from
scratch register set by prologue.
(ix86_code_end): If -fsplit-stack, call
file_end_indicate_split_stack.
(ix86_supports_split_stack): New static function.
(SPLIT_STACK_AVAILABLE): Define.
(split_stack_prologue_scratch_regno): New static function.
(split_stack_fn): New static variable.
(ix86_expand_split_stack_prologue): New function.
(ix86_live_on_entry): New static function.
(ix86_legitimate_address_p): Handle UNSPEC_STACK_CHECK.
(output_pic_addr_const): Likewise.
(i386_asm_output_addr_const_extra): Likewise.
(ix86_expand_call): Change return type to rtx. Return the new
call instruction.
(TARGET_SUPPORTS_SPLIT_STACK): Define.
(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
* config/i386/i386.md (UNSPEC_STACK_CHECK): Define.
(split_stack_prologue, split_stack_return): New insns.
(split_stack_space_check): New insn.
* config/i386/i386.h (struct machine_function): Add
split_stack_varargs_pointer field.
* config/i386/linux.h (TARGET_CAN_SPLIT_STACK): Define.
(TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
* config/i386/linux64.h (TARGET_CAN_SPLIT_STACK): Define.
(TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
* config/i386/i386-protos.h (ix86_expand_split_stack_prologue):
Declare.
(ix86_expand_call): Update declaration.
gcc/c-family/:
* c-common.c (c_common_attribute_table): Add no_split_stack.
(handle_no_split_stack_attribute): New static function.
gcc/testsuite/:
* lib/target-supports.exp (check_effective_target_split_stack):
New procedure.
* gcc.dg/split-1.c: New test.
* gcc.dg/split-2.c: New test.
* gcc.dg/split-3.c: New test.
* gcc.dg/split-4.c: New test.
libgcc/:
* generic-morestack.h: New file.
* generic-morestack.c: New file.
* generic-morestack-thread.c: New file.
* config/i386/morestack.S: New file.
* config/t-stack: New file.
* config/i386/t-stack-i386: New file.
* config.host (i[34567]86-*-linux* and friends): Add t-stack and
i386/t-stack-i386 to tmake_file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164661
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Mon, 27 Sep 2010 19:22:13 +0000 (19:22 +0000)]
In gcc/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
* doc/objc.texi (Type encoding): Added the new 'long double' (D)
code. Added byref, which was missing in the list of codes.
Explain that enumeration values are encoded as the integer type
that the compiler uses to store them. Explain and make examples
of how 'const' interacts with pointers, and the complication of
the encoding of 'const char *'.
(Legacy type encoding): New subsection, explaining that GCC emits
incorrect type encodings for the NeXT runtime for compatibility
reasons.
(@@encode): New subsection, explaining @encode and particularly
that protocol qualifiers are not recognized inside an @encode()
expression.
(Method signatures): New subsection, explaining how method
signatures are encoded.
In gcc/objc/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/45763
PR objc/25450
PR objc/25464
* objc-act.c: Improved comments for encoding functions.
(encode_aggregate_within): For the GNU runtime, rewritten some
obsfuscated code to clarify the various cases.
(encode_aggregate): Function removed.
(encode_array): Generate an error if asked to encode an incomplete
array as part of generating instance variables. Else, when
encoding an incomplete array inside a structure, encode it as an
array of zero size.
(encode_pointer): For the GNU runtime, fixed encoding 'BOOL *' as
'^c' instead of '*'.
(encode_gnu_bitfield): Encode enumerated types exactly in the same
type as integer types instead of using a hardcoded 'i'. If asked
to encode a non-integer type as a bitfield, do not abort
compilation immediately; instead generate an error, then skip the
type.
(encode_type): Use a 'switch' instead of a sequence of 'if's.
Added a 'default' clause that gets executed if the type can not be
matched, and that encodes it as '?' (unknown) and produces a
warning. For the GNU runtime, encode enumerated types exactly in
the same way as integer types instead of using a hardcoded 'i'.
Encode long double as 'D'. Encode 128-bit integers as 'T' or 't'.
Encode C++ reference types as pointers. Call encode_vector to
encode vectors.
(encode_vector): New function.
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers. I modified the
changes to be used only when compiling for the NeXT runtime.
2005-10-10 Fariborz Jahanian <fjahanian@apple.com>
Radar 4301047
* objc-act.c (encode_type): Remove the hack.
2005-07-20 Ziemowit Laski <zlaski@apple.com>
Radar 4136935
* objc-act.c (pointee_is_readonly): New function.
(encode_pointer, encode_aggregate_within, encode_type):
Attempt to emulate GCC 3.3 when generating type encodings.
In gcc/testsuite/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/25464
* objc.dg/type-size-3.m: New test.
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/45763
* objc.dg/encode-1.m: Execute the test with the GNU runtime as
well.
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/25450
* objc.dg/encode-3.m: Updated for fix of encoding of enums.
* objc.dg/type-size-2.m: Same change.
* obj-c++.dg/encode-5.mm: Same change.
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers. The original
Changelogs are below.
* objc.dg/encode-6.m: Execute the test only with the GNU runtime.
* objc.dg/encode-6-next.m: New file (from encode-6.m in the
branch).
* objc.dg/encode-7-next.m: New file (from encode-7.m in the
branch).
* objc.dg/encode-7-next-64bit.m: New file (from encode-7-64bit.m
in the branch).
* objc.dg/proto-qual-1.m: Test the 3.3 ABI on NeXT (from
proto-qual-1.m in the branch) and the normal ABI on GNU.
* objc.dg/threedotthree-abi-1.m: New file (from the branch). Run
the test only with the NeXT runtime.
* obj-c++/encode-1.mm: Execute the test only with the GNU runtime.
* obj-c++/encode-1-next.mm: New file (from encode-1.mm in the
branch).
* obj-c++.dg/threedotthree-abi-1.mm: New file (from the branch).
Run the test only with the NeXT runtime.
2006-03-30 Fariborz Jahanian <fjahanian@apple.com>
Radar 4492973
* objc.dg/encode-7-64bit.m: New.
* objc.dg/encode-7.m: Skip if -m64.
2005-10-19 Fariborz Jahanian <fjahanian@apple.com>
Radar 4301047
* objc.dg/proto-qual-1.m: Fix test to match 3.3 ABI
* obj-c++.dg/threedotthree-abi-1.mm: New
* objc.dg/threedotthree-abi-1.m: New
2005-07-20 Ziemowit Laski <zlaski@apple.com>
Radar 4136935
* obj-c++.dg/encode-1.mm: Tweak encodings to match fix.
* objc.dg/encode-6.m: Likewise.
* objc.dg/encode-7.m: New test case.
In libobjc/:
2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
* encoding.c (objc_sizeof_type): Added support for vector type and
for double long types.
(objc_alignof_type): Same change.
(objc_skip_typespec): Same change.
* objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE
instead of '!' since '!' is already used for _C_VECTOR.
* objc/objc-api.h (_C_LNG_DBL): Added.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164659
138bc75d-0d04-0410-961f-
82ee72b054a4
rwild [Mon, 27 Sep 2010 19:21:19 +0000 (19:21 +0000)]
Regenerate libjava Makefile.in files.
libjava/:
* libjava/Makefile.in: Regenerate.
* libjava/gcj/Makefile.in: Regenerate.
* libjava/include/Makefile.in: Regenerate.
* libjava/testsuite/Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164658
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Mon, 27 Sep 2010 18:04:09 +0000 (18:04 +0000)]
In gcc/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers. Removed small
change in build_conditional_expr that had been added when fixing
PR objc/27377 and which did the same check in a less complete way.
2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
Radar 4229905
* c-typeck.c (build_conditional_expr): Call objc_have_common_type when
looking for objective-c common pointer types.
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
* c-typeck.c (build_conditional_expr): For two ObjC pointer types,
use their ObjC common type.
In gcc/c-family:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
Radar 4229905
* c-common.h (objc_have_common_type): New declaration.
* stub-objc.c (objc_have_common_type): New stub.
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
* c-common.h (objc_common_type): New prototype.
* stub-objc.c (objc_common_type): New stub.
In gcc/objc/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
Radar 4229905
* objc-act.c (objc_have_common_types): New function.
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
* objc-act.c (objc_common_type): New function.
In gcc/cp/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from apple/trunk branch on FSF servers:
2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
Radar 4229905
* typeck.c (composite_pointer_type): Call objc_have_common_type
when comparing two objective-c pointer types.
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
* call.c (standard_conversion): Allow for a pointer conversion
between any two ObjC pointer types.
* typeck.c (composite_pointer_type): Determine common type
for two ObjC pointer types.
In gcc/testsuite/:
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers. Renamed
const-str-12.m to constr-str-12b.m to avoid conflicts.
2005-12-15 Fariborz Jahanian <fjahanian@apple.com>
Radar 4229905
* obj-c++.dg/warn5.mm: New
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
* obj-c++.dg/const-str-12.mm: New.
* objc.dg/const-str-12.m: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164655
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 27 Sep 2010 17:27:43 +0000 (17:27 +0000)]
2010-09-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/allocator.h (allocator_arg_t, allocator_arg,
uses_allocator): Add.
* testsuite/20_util/uses_allocator/value.cc: New.
* testsuite/20_util/uses_allocator/requirements/typedefs.cc: Likewise.
* testsuite/20_util/uses_allocator/requirements/
explicit_instantiation.cc: Likewise.
* include/bits/stl_queue.h (uses_allocator<queue>,
uses_allocator<priority_queue>): Add.
* include/bits/stl_stack.h (uses_allocator<stack>): Likewise.
* include/bits/stl_pair.h (piecewise_construct): Add.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164654
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 27 Sep 2010 15:46:07 +0000 (15:46 +0000)]
2010-09-27 Richard Guenther <rguenther@suse.de>
* objc-act.c (objc_get_class_reference): Use CP_TYPE_CONTEXT.
(objc_is_global_reference_p): Use DECL_FILE_SCOPE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164652
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 27 Sep 2010 15:15:59 +0000 (15:15 +0000)]
2010-09-27 Richard Guenther <rguenther@suse.de>
* dbxout.c (dbxout_symbol): Use DECL_FILE_SCOPE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164651
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 27 Sep 2010 12:45:06 +0000 (12:45 +0000)]
Fix formatting issues
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164649
138bc75d-0d04-0410-961f-
82ee72b054a4
jiez [Mon, 27 Sep 2010 10:16:44 +0000 (10:16 +0000)]
* print-tree.c (print_node): Print in-constant-pool.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164647
138bc75d-0d04-0410-961f-
82ee72b054a4
hainque [Mon, 27 Sep 2010 09:27:21 +0000 (09:27 +0000)]
* config/rs6000/vxworks.h (TARGET_OS_CPP_BUILTINS): Call
VXWORKS_OS_CPP_BUILTINS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164646
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 27 Sep 2010 09:27:05 +0000 (09:27 +0000)]
2010-09-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_std/cmath (__pow_helper): Remove.
(__cmath_power): Remove declaration.
* include/c_global/cmath: Likewise.
* include/std/complex (__complex_pow_unsigned): Add.
(pow(const complex<_Tp>&, int)): Use the latter.
* include/c_std/cmath.tcc: Remove file.
* include/c_global/cmath.tcc: Likewise.
* acinclude.m4: Adjust.
* include/Makefile.am: Likewise.
* configure: Regenerate.
* include/Makefile.in: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164645
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 27 Sep 2010 06:25:55 +0000 (06:25 +0000)]
* config/i386/i386.h (CLASS_MAX_NREGS): Also handle XCmode.
(UNITS_PER_WORD): Define only when IN_LIBGCC2 is undefined.
(MOVE_MAX_PIECES): Redefine using UNITS_PER_WORD.
(ASM_OUTPUT_AVX_PREFIX): Simplify pointer addition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164644
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 27 Sep 2010 00:17:14 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164643
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sun, 26 Sep 2010 22:30:48 +0000 (22:30 +0000)]
2010-09-27 Tobias Burnus <burnus@net-b.de>
PR fortran/40569
PR fortran/40568
* intrinsic.h (gfc_simplify_compiler_options,
gfc_simplify_compiler_version): New prototypes.
* intrinsic.c (gfc_intrinsic_function_by_id,
make_from_module): New functions.
(gfc_find_function, gfc_find_subroutine, gfc_generic_intrinsic,
gfc_specific_intrinsic): Don't return module intrinsics.
(add_functions): Add compiler_options, compiler_version.
(gfc_intrinsic_func_interface): Also lookup symbol by ISYM ID.
* symbol.c (std_for_isocbinding_symbol): Add version check for
NAMED_FUNCTIONS.
* iso-fortran-env.def: Add compiler_options, compiler_version.
* iso-c-binding.def: Add c_sizeof.
* gfortran.h (gfc_intrinsic_sym): Add from_module:1.
(iso_c_binding_symbol, iso_fortran_env_symbol): Add NAMED_FUNCTIONS.
(gfc_intrinsic_function_by_id): New prototype.
* module.c (create_intrinsic_function): New function.
(import_iso_c_binding_module, use_iso_fortran_env_module): Use it.
* trans-types.c (init_c_interop_kinds): Add NAMED_FUNCTIONS.
* resolve.c (resolve_intrinsic): Try also to resolve intrinsics
by ISYM ID.
* simplify.c (gfc_simplify_compiler_options,
gfc_simplify_compiler_version): New functions.
2010-09-27 Tobias Burnus <burnus@net-b.de>
PR fortran/40569
PR fortran/40568
* gfortran.dg/storage_size_2.f08: Fix test.
* gfortran.dg/c_sizeof_1.f90: Fix test.
* gfortran.dg/c_sizeof_2.f90: Update dg-error.
* gfortran.dg/c_sizeof_3.f90: New.
* gfortran.dg/c_sizeof_4.f90: New.
* gfortran.dg/iso_c_binding_compiler_1.f90: New.
* gfortran.dg/iso_c_binding_compiler_2.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164639
138bc75d-0d04-0410-961f-
82ee72b054a4
domob [Sun, 26 Sep 2010 19:25:52 +0000 (19:25 +0000)]
2010-09-26 Daniel Kraft <d@domob.eu>
PR fortran/45783
PR fortran/45795
* resolve.c (resolve_select_type): Clarify code.
(resolve_assoc_var): Only set typespec if it is currently unknown.
2010-09-26 Daniel Kraft <d@domob.eu>
PR fortran/45783
PR fortran/45795
* gfortran.dg/select_type_18.f03: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164638
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Sun, 26 Sep 2010 19:04:42 +0000 (19:04 +0000)]
In gcc/objc/:
* objc-act.c: Removed historical, obsolete comment at the top of
the file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164637
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Sun, 26 Sep 2010 19:03:27 +0000 (19:03 +0000)]
Reverted removing 'inline' from get_imp
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164636
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 26 Sep 2010 18:28:48 +0000 (18:28 +0000)]
* config/i386/i386.md (pro_epilogue_adjust_stack_<mode>_add): Merge
from pro_epilogue_adjust_stack_<mode>_{1,2}.
(pro_epilogue_adjust_stack_<mode>_add): Rename from
pro_epilogue_adjust_stack_<mode>_3.
* config/i386/i386.c (pro_epilogue_adjust_stack): Update for
renamed pro_epilogue_adjust_stack_{si,di}_add.
(ix86_expand_prologue): Use indirect functions. Update for renamed
pro_epilogue_adjust_stack_{si,di}_sub.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164635
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Sun, 26 Sep 2010 14:45:12 +0000 (14:45 +0000)]
In libobjc/:
* libobjc_entry.c: File removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164633
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Sun, 26 Sep 2010 14:32:45 +0000 (14:32 +0000)]
2010-09-26 Kai Tietz <kai.tietz@onevision.com>
* sendmsg.c (get_imp): Remove inline.
(objc_msg_lookup): Likewise.
(objc_get_uninstalled_dtable): Likewise.
* encoding.c (objc_skip_type_qualifiers): Likewise.
(objc_skip_offset): Likewise.
* archive.c (__objc_write_object): Likewise
(__objc_write_class):
(__objc_write_selector):
(objc_read_char):
(objc_read_unsigned_char):
(objc_read_short):
(objc_read_unsigned_short):
(objc_read_int):
(objc_read_long):
(__objc_read_nbyte_uint):
(objc_read_unsigned_int):
(objc_read_unsigned_long):
* objc/objc-decls.h (obc_EXPORT): Remove dllexport for DLL_EXPORT case.
(objc_EXPORT): Likewise.
* objc/message.h (objc-decls.h): Add include.
* objc/objc-api.h: Mark API by objc_EXPORT.
* libobjc.def (__objc_responds_to): Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164632
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sun, 26 Sep 2010 12:30:54 +0000 (12:30 +0000)]
2010-09-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/45793
* module.c (create_int_parameter_array): Set the array value shape.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164631
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 26 Sep 2010 10:34:57 +0000 (10:34 +0000)]
* config/i386/i386.md (movmsk_df): New insn.
(signbitdf): Split out of signbit<mode>2. Generate movmsk_df
sequence for TARGET_SSE_MATH.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164630
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 26 Sep 2010 07:26:20 +0000 (07:26 +0000)]
gcc/
* config/mips/mips.c (mips_builtin_decls): Declare.
(mips_init_builtins): Store function declarations in
mips_builtin_decls.
(mips_builtin_decl): New function.
(TARGET_BUILTIN_DECL): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164629
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sun, 26 Sep 2010 04:02:24 +0000 (04:02 +0000)]
* config/i386/cygwin.asm: Include auto-host.h.
(cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
cfi_def_cfa_register, cfi_register, cfi_push, cfi_pop): New macros.
(__chkstk, __alloca): Annotate for dwarf2 unwind info. Drop
alignment code from the 64-bit path. Use gas local labels.
* config/i386/i386.md (pro_epilogue_adjust_stack_<mode>_2): Macroize
from _di_2. Remove the useless constant integer argument.
(pro_epilogue_adjust_stack_<mode>_3): New.
(allocate_stack_worker_probe_<mode>): Macroize from
allocate_stack_worker_{32,64}. Use __chkstk_ms. Update all users.
* config/i386/i386.c (ix86_expand_prologue): Use __chkstk_ms;
use gen_pro_epilogue_adjust_stack_*_3 and annotate it.
(__chkstk_ms): New function.
* config/i386/t-cygming (LIB1ASMFUNCS): Add _chkstk_ms.
* gcc/config/i386/t-interix: Likewise.
* configure.ac (HAVE_GAS_CFI_DIRECTIVE): Export for target.
(HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Likewise.
(HAVE_GAS_CFI_SECTIONS_DIRECTIVE): Likewise.
* configure, config.in: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164628
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 26 Sep 2010 00:17:07 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164627
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 25 Sep 2010 21:34:45 +0000 (21:34 +0000)]
* tree-inline.c (copy_bb): Use GSI_CONTINUE_LINKING when inserting new
statements because of the return slot optimization.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164622
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 25 Sep 2010 19:23:25 +0000 (19:23 +0000)]
2010-09-25 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Re-add accidently removed \input line.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164621
138bc75d-0d04-0410-961f-
82ee72b054a4
jiez [Sat, 25 Sep 2010 14:53:20 +0000 (14:53 +0000)]
* lto.c (lto_read_all_file_options): Start a new line after
printing out file names.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164620
138bc75d-0d04-0410-961f-
82ee72b054a4
domob [Sat, 25 Sep 2010 14:27:20 +0000 (14:27 +0000)]
2010-09-25 Daniel Kraft <d@domob.eu>
PR fortran/45776
* gfortran.h (struct gfc_dt): New member `dt_io_kind'.
* io.c (resolve_tag): F2008 check for NEWUNIT and variable
definition checks for NEWUNIT, IOSTAT, SIZE and IOMSG.
(gfc_free_dt): Correctly handle freeing of `dt_io_kind' and
`extra_comma' with changed semantics.
(gfc_resolve_dt): Check variable definitions.
(match_io_element): Remove INTENT and PURE checks here and
initialize code->ext.dt member.
(match_io): Set dt->dt_io_kind.
(gfc_resolve_inquire): Check variable definition for all tags
except UNIT, FILE and ID.
* resolve.c (resolve_transfer): Variable definition check.
2010-09-25 Daniel Kraft <d@domob.eu>
PR fortran/45776
* gfortran.dg/io_constraints_6.f03: New test.
* gfortran.dg/io_constraints_7.f03: New test.
* gfortran.dg/newunit_2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164619
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Sat, 25 Sep 2010 09:40:19 +0000 (09:40 +0000)]
* config/avr/avr.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/avr/avr-protos.h (class_likely_spilled_p): Remove.
* config/avr/avr.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(class_likely_spilled_p): Rename to...
(avr_class_likely_spilled_p): ...this. Make static. Change argument
type to reg_class_t.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164618
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 25 Sep 2010 07:06:36 +0000 (07:06 +0000)]
2010-09-25 Tobias Burnus <burnus@net-b.de>
* interface.c (gfc_match_end_interface): Constify char pointer
to fix warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164617
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Sat, 25 Sep 2010 05:55:59 +0000 (05:55 +0000)]
2010-09-24 Steven G. Kargl < kargl@gcc.gnu.org>
* fortran/interface.c (gfc_match_end_interface): Deal with user defined
operators that overload rational operators and C1202.
2010-09-24 Steven G. Kargl < kargl@gcc.gnu.org>
* testsuite/gfortran.dg/operator_c1202.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164616
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 25 Sep 2010 00:18:04 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164615
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 24 Sep 2010 21:47:59 +0000 (21:47 +0000)]
* lto-symtab.c (lto_symtab_entry_def): Add guessed field.
(lto_symtab_resolve_symbols): Set it.
(lto_symtab_merge_decls_1): Do not compute used_from_object_file;
store resolution field in cgraph/varpool.
* cgraph.c (cgraph_same_body_alias, cgraph_add_thunk): Return node.
(cgraph_get_node_or_alias, cgraph_get_node_or_alias): Constify.
(cgraph_dump_node): Drop used_from_object_file.
(cgraph_clone_node, cgraph_create_virtual_clone): Likewise.
(cgraph_function_body_availability): Use decl_replaceable_p.
(cgraph_make_node_local): Set resolution to LDPR_PREVAILING_DEF_IRONLY.
(cgraph_can_remove_if_no_direct_calls_and_refs): Use
cgraph_used_from_object_file_p.
(cgraph_will_be_removed_from_program_if_no_direct_calls): Use
cgraph_used_from_object_file_p.
(resolution_used_from_other_file_p): New functoin.
(cgraph_used_from_object_file_p): New predicate.
* cgraph.h: Include plugin-api.h
(struct cgraph_local_info): Remove used_from_object_file.
(struct cgraph_node): Add resolution field.
(struct varpool_node): Likewise; remove used_from_object_file;
reove const_value_known.
(cgraph_get_node, cgraph_get_node_or_alias, cgraph_node,
cgraph_same_body_alias, cgraph_add_thunk): Update prototypes.
(resolution_used_from_other_file_p, cgraph_used_from_object_file_p,
varpool_used_from_object_file_p): Declare.
(varpool_get_node, varpool_extra_name_alias): Update prototype.
* tree.h (DECL_REPLACEABLE_P): Remove.
(decl_replaceable_p, decl_binds_to_current_def_p): Declare.
* final.c (rest_of_clean_state): Use decl_binds_to_current_def_p.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
input_overwrite_node, input_node, input_varpool_node): Stream
resolution.
* expr.c (expand_expr_real_1): Use const_value_known_p
* ipa.c (ipa_discover_readonly_nonaddressable_var): Do not set
const_value_known.
(cgraph_externally_visible_p): Use cgraph_used_from_object_file_p.
(function_and_variable_visibility): Set resolution for local vars
and functions.
use varpool_used_from_object_file_p.
* varasm.c (resolution_to_local_definition_p, resolution_local_p): New
static functions.
(default_binds_local_p_1): Use resolutoin info.
(decl_binds_to_current_def_p, decl_replaceable_p): New functions.
* varpool.c (varpool_get_node): Constify.
(const_value_known_p): Do not use vnode->const_value_known;
use decl_replaceable_p.
(varpool_finalize_decl): Do not set const_value_known.
(cgraph_variable_initializer_availability): Use decl_replaceable_p
(varpool_extra_name_alias): Return new node.
(varpool_used_from_object_file_p): New function.
* decl.c (finish_function): Use decl_replaceable_p
* method.c (make_alias_for_thunk): Update call of cgraph_same_body_alias.
* lto.c (lto_promote_cross_file_statics): Use const_value_known_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164610
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 24 Sep 2010 21:20:51 +0000 (21:20 +0000)]
* config/ia64/ia64.c (ia64_dwarf_handle_frame_unspec): New.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): New.
(do_spill): Use REG_CFA_OFFSET.
(ia64_expand_prologue): Use REG_CFA_ADJUST_CFA and REG_CFA_REGISTER
as appropriate.
(ia64_expand_epilogue): Likewise.
(process_set): Split into ...
(process_cfa_adjust_cfa): this,
(process_cfa_register): this,
(process_cfa_offset): and this new function.
(ia64_asm_unwind_emit): Use them. Expect REG_CFA_* notes
instead of REG_FRAME_RELATED_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164609
138bc75d-0d04-0410-961f-
82ee72b054a4
hainque [Fri, 24 Sep 2010 20:32:48 +0000 (20:32 +0000)]
* config/i386/vx-common.h (DBX_REGISTER_NUMBER): Reinstate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164607
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 24 Sep 2010 19:14:51 +0000 (19:14 +0000)]
* doc/extend.texi: (attribute leaf): Document.
* tree.c (local_define_builtin): Handle ECF_LEAF.
(build_common_builtin_nodes): Set ECF_LEAF where needed.
* tree.h (ECF_LEAF): New.
* ipa-reference.c (propagate_bits): For leaf calls propagate ever overwrittable
and unavailable functions.
(ipa_init): Put all_module_statics into optimization_summary_obstack.
(copy_global_bitmap): Do not copy all_module_statics.
(read_write_all_from_decl): Use cgraph_node argument; handle ECF_LEAF.
(propagate): Handle overwritable and unavailable leaf functions;
initialize global info for overwritable and unavailable leaf functions;
do not free all module statics.
(ipa_reference_get_not_read_global, ipa_reference_get_not_written_global):
leaf calls don't clobber local statics.
* calls.c (flags_from_decl_or_type): Handle leaf.
* tree-cfg.c (stmt_can_make_abnormal_goto): Leaf functions can't do
abnormal gotos.
* c-common.c (handle_leaf_attribute): New function.
(struct attribute_spec c_common_att): Add leaf.
* gcc.dg/tree-ssa/leaf.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164606
138bc75d-0d04-0410-961f-
82ee72b054a4
bstarynk [Fri, 24 Sep 2010 17:37:16 +0000 (17:37 +0000)]
2010-09-24 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/gengtype.c: Reindented.
* gcc/gengtype.h: Reindented.
* gcc/gengtype-parse.c: Reindented.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164604
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 24 Sep 2010 16:24:45 +0000 (16:24 +0000)]
PR tree-optimization/45738
PR tree-optimization/45741
* expr.c (string_constant): Allow CONST_DECL too;
check that DECL_INITIAL is set.
* varpool.c (const_value_known_p): Only look into VAR_DECL
and CONST_DECL.
* gcc.c-torture/compile/pr45741.c: New.
* gfortran.fortran-torture/compile/pr45738.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164602
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 24 Sep 2010 15:14:40 +0000 (15:14 +0000)]
* common.opt (undef): New.
testsuite:
* gcc.dg/cpp/undef-opt-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164599
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 24 Sep 2010 15:13:19 +0000 (15:13 +0000)]
* decl.c (compute_array_index_type): Remember type dependence of
array bound.
* pt.c (dependent_type_p_r): Don't recompute it here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164598
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 24 Sep 2010 15:13:08 +0000 (15:13 +0000)]
* error.c (dump_expr) [CASE_CONVERT]: Print conversion between
reference and pointer to the same type as "*" or "&".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164597
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 24 Sep 2010 14:37:02 +0000 (14:37 +0000)]
PR middle-end/45234
* rtl.h (enum global_rtl_index): Add
GR_VIRTUAL_PREFERRED_STACK_BOUNDARY.
(LAST_VIRTUAL_POINTER_REGISTER): Define.
(virtual_preferred_stack_boundary_rtx,
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM): Define.
(LAST_VIRTUAL_REGISTER): Increase by one.
(REGNO_PTR_FRAME_P): Use LAST_VIRTUAL_POINTER_REGISTER
instead of LAST_VIRTUAL_REGISTER.
* function.c (instantiate_new_reg): Handle
virtual_preferred_stack_boundary_rtx.
* emit-rtl.c (init_virtual_regs): Handle
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
(init_emit_regs): Initialize virtual_preferred_stack_boundary_rtx.
* explow.c (round_push): If crtl->preferred_stack_boundary
is smaller than MAX_SUPPORTED_STACK_ALIGNMENT, use
virtual_preferred_stack_boundary_rtx alignment instead of
crtl->preferred_stack_boundary alignment.
(allocate_dynamic_stack_space): Use CONST_INT_P and REG_P
macros. Never decrease crtl->preferred_stack_boundary,
use crtl->preferred_stack_boundary or MAX_SUPPORTED_STACK_ALIGNMENT
instead of PREFERRED_STACK_BOUNDARY. Don't modify
stack_pointer_delta in dynamic allocation, even when size
is constant.
(probe_stack_range, anti_adjust_stack_and_probe): Use CONST_INT_P
macro.
* print-rtl.c (print_rtx): Handle
VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
* config/alpha/alpha.h (NONSTRICT_REG_OK_FP_BASE_P): Use
LAST_VIRTUAL_POINTER_REGISTER instead of LAST_VIRTUAL_REGISTER.
* config/frv/frv.c (frv_emit_movsi): Likewise.
* config/arm/arm.c (thumb1_legitimate_address_p): Likewise.
* config/rs6000/rs6000.c (virtual_stack_registers_memory_p):
Likewise.
* gcc.dg/torture/stackalign/alloca-6.c: New test.
* gcc.target/i386/pr45234.c: New test.
Revert:
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* calls.c (expand_call): Make sure that all variable sized
adjustments are multiple of preferred stack boundary after
stack alignment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164593
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Fri, 24 Sep 2010 14:06:35 +0000 (14:06 +0000)]
PR bootstrap/45751
* gcc/config/darwin-driver.c (darwin_default_min_version):
Adjust size passed to memcpy in two places.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164592
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 24 Sep 2010 13:21:30 +0000 (13:21 +0000)]
2010-09-24 Richard Guenther <rguenther@suse.de>
* c-decl.c (pop_scope): Always set file-scope DECL_CONTEXT.
Make sure to not call set_type_context with error_mark_node.
* langhooks.c (lhd_set_decl_assembler_name): Use DECL_FILE_SCOPE_P.
* gcc.dg/lto/
20091006-2_0.c: Prune warnings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164591
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 24 Sep 2010 11:59:12 +0000 (11:59 +0000)]
2010-09-24 Richard Guenther <rguenther@suse.de>
* Makefile.in (OBJS-onestep): Remove.
(ALL_HOST_BACKEND_OBJS): Remove libbackend.o.
(libbackend.a): Remove onestep support.
(libbackend.o): Remove.
* configure.ac (--enable-intermodule): Remove.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164590
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 24 Sep 2010 11:29:59 +0000 (11:29 +0000)]
* cfgcleanup.c (flow_find_head_matching_sequence): Terminate when
reaching the end of a block if it occurs at a DEBUG_INSN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164589
138bc75d-0d04-0410-961f-
82ee72b054a4
mshawcroft [Fri, 24 Sep 2010 10:34:01 +0000 (10:34 +0000)]
2010-09-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
* g++.dg/debug/dwarf2/nested-2.C: Permit the ARM @ character
as a comment leader in regexp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164588
138bc75d-0d04-0410-961f-
82ee72b054a4
gingold [Fri, 24 Sep 2010 08:46:36 +0000 (08:46 +0000)]
2010-09-09 Tristan Gingold <gingold@adacore.com>
PR target/44242
* config/vms/vms-crt0-64.c: Removed.
* config/vms/vms-crt0.c: Removed.
* config/vms/vms-psxcrt0-64.c: Removed.
* config/vms/vms-psxcrt0.c: Removed.
* config/vms/vms-ucrt0.c: New file.
* config/vms/t-vms64: Removed.
* config/vms/t-vms (VMS_EXTRA_PARTS): Uncomment it. Remove DECC.
Use $(GCC_FOR_TARGET) to build pcrt0.o and vcrt0.o
* config.gcc (alpha-dec-vms): Use t-vms.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164587
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Fri, 24 Sep 2010 08:19:17 +0000 (08:19 +0000)]
In gcc/:
* doc/invoke.texi (-fno-nil-receivers): Tidied up line to remove
underfull hbox in DVI output.
(-fobjc-class-cxx-cdtors): Same change.
(-fobjc-exceptions): Tidied up documentation. Explain what the
option does, but moved the (lenghty) description of the exception
syntax into objc.texi.
(-fobjc-gc): Explain that the option is not useful with the GNU
runtime.
(-fzero-link): Explain that the GNU runtime always works in
"zero-link" mode.
* doc/objc.texi: All sections: simplified @node declarations
removing specification of next, previous, up node.
(Objective-C): Updated introduction.
(Garbage Collection): Updated. The bohem-gc library is now
included in gcc itself. Mention that this section only applies to
the GNU Objective-C runtime.
(compatibility_alias): Small tidy up.
(Exceptions): New section mostly containing text previously in the
description of the -fobjc-exception command-line option.
(Synchronization): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164586
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Fri, 24 Sep 2010 07:51:29 +0000 (07:51 +0000)]
* objc.dg/sync-2.m: New test.
* obj-c++.dg/sync-2.mm: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164585
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 24 Sep 2010 06:39:20 +0000 (06:39 +0000)]
2010-09-24 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Add second space after end-of-sentence period;
change / to /@/ to allow hyphenation of URLs.
(Standards): Remove duplicated OpenMP, update wording given that
Fortran 2008 now released.
(Fortran 2008 status): Update and add list of implemented features.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164584
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 24 Sep 2010 06:10:35 +0000 (06:10 +0000)]
* config/i386/i386.md (ix86_code_end): Move the initialization of
xops array near the consumer. Use AX_REG and SP_REG instead of
numerical constants.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164583
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 24 Sep 2010 05:42:03 +0000 (05:42 +0000)]
2010-09-24 Tobias Burnus <burnus@net-b.de>
PR fortran/40571
* iso-fortran-env.def: Add NAMED_KINDARRAY with
character_kinds, integer_kinds, logical_kinds and
real_kinds.
* gfortran.h: Add them to iso_fortran_env_symbol.
* libgfortran.h: Rename GFC_INQUIRE_INTERNAL_UNIT to
LIBERROR_INQUIRE_INTERNAL_UNIT and move it from
libgfortran_stat_codes to libgfortran_error_codes.
* module.c (create_int_parameter_array): New function.
(use_iso_fortran_env_module): Use it for
NAMED_KINDARRAY of iso-fortran-env.def.
* trans-decl.c (gfc_get_symbol_decl): Parameter
arrays of intrinsics modules become local static variables.
* intrinsic.texi (ISO_FORTRAN_ENV): Add character_kinds,
integer_kinds, logical_kinds and real_kinds.
2010-09-24 Tobias Burnus <burnus@net-b.de>
PR fortran/40571
* gfortran.dg/iso_fortran_env_7.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164581
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 24 Sep 2010 00:19:44 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164578
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Thu, 23 Sep 2010 22:21:39 +0000 (22:21 +0000)]
In gcc/:
* c-typeck.c (convert_arguments): Use warning 'too many arguments
to method [methodname]' for an Objective-C method instead of the
less satisfactory 'too many arguments to function' (with no method
name).
In gcc/cp/:
* typeck.c (warn_args_num): Use warning 'too many arguments to
method [methodname]' for an Objective-C method instead of the less
satisfactory 'too many arguments to function' (with no method
name).
In gcc/testsuite/:
* obj-c++.dg/too-many-args.mm: New file.
Merge from 'apple/trunk' branch on FSF servers.
2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
Radar 4491608
* objc.dg/too-many-args.m: New
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164573
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 23 Sep 2010 22:19:52 +0000 (22:19 +0000)]
Fix latest ChangeLog entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164572
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 23 Sep 2010 22:06:18 +0000 (22:06 +0000)]
* tree-flow.h (execute_update_addresses_taken): Adjust.
* tree-ssa.c (maybe_optimize_var): Tweak comment and dump messages.
(execute_update_addresses_taken): Remove parameter and OPTIMIZE test.
* passes.c (execute_function_todo): Adjust calls to above function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164571
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Thu, 23 Sep 2010 19:37:48 +0000 (19:37 +0000)]
2010-09-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45744
* frontend-passes.c (optimize_binop_array_assignment):
Only re-use lhs as intermediate storage if kind and type
parameters match.
2010-09-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45744
* gfortran.dg/dependency_36.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164570
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Thu, 23 Sep 2010 17:44:00 +0000 (17:44 +0000)]
Remove accidentally added empty file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164569
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Thu, 23 Sep 2010 16:15:44 +0000 (16:15 +0000)]
* config/arm/arm.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
* config/arm/arm-protos.h (arm_output_addr_const_extra): Remove.
* config/arm/arm.c (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
(arm_output_addr_const_extra): Make static.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164568
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 23 Sep 2010 13:25:30 +0000 (13:25 +0000)]
* config/i386/i386.md (UNSPECV_NOPS): Rename from UNSPEC_NOPS and
define as unspec_volatile.
("nops"): Define as unspec_volatile. Use fputs to write to
asm_out_file directly. Output NOPs on separate lines using while loop.
* config/i386/i386.c (ix86_code_end): Use fputs to write to
asm_out_file directly. Output NOPs on separate lines using while loop.
testsuite/ChangeLog:
* gcc.target/i386/pad-1.c: Remove -S from dg-options.
* gcc.target/i386/pad-3.c: Ditto.
* gcc.target/i386/pad-7.c: Ditto.
* gcc.target/i386/pad-7.c: Ditto.
* gcc.target/i386/pr36502.c: Ditto.
* gcc.target/i386/zee.c: Ditto.
* gcc.target/i386/
20060821-1.c: Ditto.
* gcc.target/i386/pad-2.c: Ditto. Scan for NOPs on separate lines.
* gcc.target/i386/pad-5a.c: Ditto. Do not use scan-assembler-not.
* gcc.target/i386/pad-5b.c: Ditto.
* gcc.target/i386/pad-6a.c: Ditto.
* gcc.target/i386/pad-6b.c: Ditto.
* gcc.target/i386/pad-8.c: Ditto.
* gcc.target/i386/pad-9.c: Ditto.
* gcc.target/i386/pad-10.c: Ditto.
* gcc.target/i386/pad-4.c: Ditto. Require pic effective target.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164564
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 23 Sep 2010 12:39:26 +0000 (12:39 +0000)]
2010-09-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45565
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee):
Make sure to adjust the fndecl before replacing the stmt.
* g++.dg/ipa/pr45565.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164561
138bc75d-0d04-0410-961f-
82ee72b054a4
mikael [Thu, 23 Sep 2010 11:11:23 +0000 (11:11 +0000)]
2010-09-23 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45745
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Handle
ss->type == GFC_SS_INTRINSIC (for {l,u}bound intrinsics) case.
2010-09-23 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45745
PR fortran/45648
* gfortran.dg/vector_subscript_bound_1.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164558
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 23 Sep 2010 11:00:27 +0000 (11:00 +0000)]
2010-09-23 Richard Guenther <rguenther@suse.de>
PR middle-end/45750
* gimplify.c (gimplify_expr): Properly pass on GS_ERROR when
gimplifying MEM_REF.
* gcc.dg/pr45750.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164555
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 23 Sep 2010 10:57:37 +0000 (10:57 +0000)]
* gcc.dg/torture/stackalign/alloca-4.c: Remove -m32 from dg-options.
* gcc.dg/torture/stackalign/alloca-5.c: Likewise. Fix up -DDEBUG
build.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164554
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Thu, 23 Sep 2010 10:50:48 +0000 (10:50 +0000)]
* config/rs6000/rs6000.c (toc_relative_ok): Delete.
(rs6000_emit_move): Use SYMBOL_REF_LOCAL_P instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164553
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Thu, 23 Sep 2010 10:04:33 +0000 (10:04 +0000)]
PR rtl-optimization/44374
* basic-block.h (enum bb_flags): Add BB_MODIFIED.
* df-core.c (df_set_bb_dirty): Set it.
* ifcvt.c (find_memory): Remove function.
(dead_or_predicable): Use can_move_insns_across.
* df.h (can_move_insns_across): Declare function.
* cfgcleanup.c (block_was_dirty): New static variable.
(try_crossjump_bb, try_forward_edges): Test BB_MODIFIED flag rather
than df_get_bb_dirty.
(try_head_merge_bb): New static function.
(try_optimize_cfg): Call it. Call df_analyze if block_was_dirty
is set.
* df-problems.c: Include "target.h"
(df_simulate_find_uses): New static function.
(MEMREF_NORMAL, MEMREF_VOLATILE): New macros.
(find_memory, find_memory_store): New static functions.
(can_move_insns_across): New function.
* Makefile.in (df-problems.o): Update dependencies.
testsuite/
PR rtl-optimization/44374
* gcc.target/arm/headmerge-1.c: New test.
* gcc.target/arm/headmerge-2.c: New test.
* gcc.target/i386/headmerge-1.c: New test.
* gcc.target/i386/headmerge-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164552
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 23 Sep 2010 09:01:32 +0000 (09:01 +0000)]
gcc/fortran/
2010-09-23 Tobias Burnus <burnus@net-b.de>
* intrinsic.texi (OpenMP modules): Add named constants of
OMP_LIB.
libgomp/
2010-09-23 Tobias Burnus <burnus@net-b.de>
* libgomp.texi (omp_get_nested, omp_set_nested,
* omp_set_dynamic):
Change Fortran datatype to LOGICAL.
(omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
omp_unset_nested_lock): Use intent(inout) instead of intent(out).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164551
138bc75d-0d04-0410-961f-
82ee72b054a4
domob [Thu, 23 Sep 2010 08:37:54 +0000 (08:37 +0000)]
2010-09-23 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44044
PR fortran/45474
* gfortran.h (gfc_check_vardef_context): New method.
(struct symbol_attribute): New flag `select_type_temporary'.
* primary.c (gfc_variable_attr): Clarify initialization of ref.
(match_variable): Remove PROTECTED check and assignment check
for PARAMETERs (this is now done later).
* match.c (gfc_match_iterator): Remove INTENT(IN) check.
(gfc_match_associate): Defer initialization of newAssoc->variable.
(gfc_match_nullify): Remove PURE definability check.
(select_type_set_tmp): Set new `select_type_temporary' flag.
* expr.c (gfc_check_assign): Remove INTENT(IN) check here.
(gfc_check_pointer_assign): Ditto (and other checks removed).
(gfc_check_vardef_context): New method.
* interface.c (compare_parameter_protected): Removed.
(compare_actual_formal): Use `gfc_check_vardef_context' for checks
related to INTENT([IN]OUT) arguments.
* intrinsic.c (check_arglist): Check INTENT for intrinsics.
* resolve.c (gfc_resolve_iterator): Use `gfc_check_vardef_context'.
(remove_last_array_ref): New method.
(resolve_deallocate_expr), (resolve_allocate_expr): Ditto.
(resolve_allocate_deallocate): Ditto (for STAT and ERRMSG).
(resolve_assoc_var): Remove checks for definability here.
(resolve_select_type): Handle resolving of code->block here.
(resolve_ordinary_assign): Remove PURE check.
(resolve_code): Do not resolve code->blocks for SELECT TYPE here.
Use `gfc_check_vardef_context' for assignments and pointer-assignments.
2010-09-23 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44044
PR fortran/45474
* gfortran.dg/intrinsic_intent_1.f03: New test.
* gfortran.dg/select_type_17.f03: New test.
* gfortran.dg/associate_5.f03: More definability tests.
* gfortran.dg/enum_2.f90: Check definability.
* gfortran.dg/allocatable_dummy_2.f90: Change expected error message.
* gfortran.dg/allocate_alloc_opt_2.f90: Ditto.
* gfortran.dg/char_expr_2.f90: Ditto.
* gfortran.dg/deallocate_alloc_opt_2.f90: Ditto.
* gfortran.dg/enum_5.f90: Ditto.
* gfortran.dg/equiv_constraint_8.f90: Ditto.
* gfortran.dg/impure_assignment_2.f90: Ditto.
* gfortran.dg/impure_assignment_3.f90: Ditto.
* gfortran.dg/intent_out_1.f90: Ditto.
* gfortran.dg/intent_out_3.f90: Ditto.
* gfortran.dg/pointer_assign_7.f90: Ditto.
* gfortran.dg/pointer_intent_3.f90: Ditto.
* gfortran.dg/pr19936_1.f90: Ditto.
* gfortran.dg/proc_ptr_comp_3.f90: Ditto.
* gfortran.dg/simpleif_2.f90: Ditto.
* gfortran.dg/protected_5.f90: Ditto.
* gfortran.dg/protected_4.f90: Ditto and remove invalid error check.
* gfortran.dg/protected_6.f90: Ditto.
* gfortran.dg/protected_7.f90: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164550
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 23 Sep 2010 01:28:39 +0000 (01:28 +0000)]
2010-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45710
* gfortran.dg/namelist_65.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164548
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 23 Sep 2010 00:53:15 +0000 (00:53 +0000)]
2010-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45710
* io/write.c (namelist_write_newline): Pad character array internal
unit records with spaces.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164543
138bc75d-0d04-0410-961f-
82ee72b054a4