gcc.git
16 years agore PR fortran/34246 (gfortran.dg/bind_c_usage_16.f03 doesn't work)
Tobias Burnus [Sun, 16 Dec 2007 20:24:32 +0000 (21:24 +0100)]
re PR fortran/34246 (gfortran.dg/bind_c_usage_16.f03 doesn't  work)

2007-12-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34246
        * trans-types.c (gfc_init_types): Change build_type_variant
        to build_qualified_type.
        (gfc_sym_type): Return gfc_character1_type_node for
        character-returning bind(C) functions.
        * trans-expr.c (gfc_conv_function_call): Do not set
        se->string_length for character-returning bind(c) functions.
        (gfc_trans_string_copy,gfc_trans_scalar_assign):
         Support also single characters.

2007-12-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34246
        * gfortran.dg/bind_c_usage_16.f03: Extend test.

From-SVN: r130991

16 years agoUndo misguided distinction WRT deciding if a warning is an error or a warning.
Bernhard Fischer [Sun, 16 Dec 2007 17:16:15 +0000 (18:16 +0100)]
Undo misguided distinction WRT deciding if a warning is an error or a warning.

A Warning is a warning, diagnostics DTRT. Cosmetic correction from fallout for
fix for PR21061. See ML-archives for details on why this hunk is wrong but
still harmless in effect.

2007-12-16  Bernhard Fischer  <aldot@gcc.gnu.org>

        * errors.c (gfc_notify_std): As originally stated but improperly
        changed, disregard warnings_are_errors for deciding which buffer
        to use for warnings.

From-SVN: r130990

16 years agotree-vect-transform.c (conservative_cost_threshold): Add missing space to "not vector...
Uros Bizjak [Sun, 16 Dec 2007 12:26:29 +0000 (13:26 +0100)]
tree-vect-transform.c (conservative_cost_threshold): Add missing space to "not vectorized" message.

        * tree-vect-transform.c (conservative_cost_threshold): Add missing
        space to "not vectorized" message.

From-SVN: r130989

16 years agore PR fortran/31213 (ICE on valid code with gfortran)
Paul Thomas [Sun, 16 Dec 2007 11:34:08 +0000 (11:34 +0000)]
re PR fortran/31213 (ICE on valid code with gfortran)

2007-12-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31213
PR fortran/33888
PR fortran/33998
* trans-array.c (gfc_trans_array_constructor_value): If the
iterator variable does not have a backend_decl, use a local
temporary.
(get_elemental_fcn_charlen): New function to map the character
length of an elemental function onto its actual arglist.
(gfc_conv_expr_descriptor): Call the above so that the size of
the temporary can be evaluated.
* trans-expr.c : Include arith.h and change prototype of
gfc_apply_interface_mapping_to_expr to return void.  Change all
references to gfc_apply_interface_mapping_to_expr accordingly.
(gfc_free_interface_mapping): Free the 'expr' field.
(gfc_add_interface_mapping): Add an argument for the actual
argument expression. This is copied to the 'expr' field of the
mapping.  Only stabilize the backend_decl if the se is present.
Copy the character length expression and only add it's backend
declaration if se is present.  Return without working on the
backend declaration for the new symbol if se is not present.
(gfc_map_intrinsic_function) : To simplify intrinsics 'len',
'size', 'ubound' and 'lbound' and then to map the result.
(gfc_map_fcn_formal_to_actual): Performs the formal to actual
mapping for the case of a function found in a specification
expression in the interface being mapped.
(gfc_apply_interface_mapping_to_ref): Remove seen_result and
all its references. Remove the inline simplification of LEN
and call gfc_map_intrinsic_function instead.  Change the
order of mapping of the actual arguments and simplifying
intrinsic functions.  Finally, if a function maps to an
actual argument, call gfc_map_fcn_formal_to_actual.
(gfc_conv_function_call): Add 'e' to the call to
gfc_add_interface_mapping.
* dump-parse-tree.c (gfc_show_symbol_n): New function for
diagnostic purposes.
* gfortran.h : Add prototype for gfc_show_symbol_n.
* trans.h : Add 'expr' field to gfc_add_interface_mapping.
Add 'expr' to prototype for gfc_show_symbol_n.
* resolve.c (resolve_generic_f0): Set specific function as
referenced.

2007-12-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31213
PR fortran/33888
PR fortran/33998
* gfortran.dg/mapping_1.f90: New test.
* gfortran.dg/mapping_2.f90: New test.
* gfortran.dg/mapping_3.f90: New test.

From-SVN: r130988

16 years agore PR rtl-optimization/34415 (Possible miscompilation on MIPS)
Richard Sandiford [Sun, 16 Dec 2007 09:54:34 +0000 (09:54 +0000)]
re PR rtl-optimization/34415 (Possible miscompilation on MIPS)

gcc/
PR rtl-optimization/34415
* df.h (DF_LR_IN, DF_LR_OUT): Update comments.
* resource.c (mark_target_live_regs): Use DF_LR_IN rather than
df_get_live_in.  Don't handle pseudos.

gcc/testsuite/
PR rtl-optimization/34415
* gcc.c-torture/execute/pr34415.c: New test.

From-SVN: r130987

16 years agopatch_tester.sh: Don't save the script anymore.
Sebastian Pop [Sun, 16 Dec 2007 01:01:23 +0000 (01:01 +0000)]
patch_tester.sh: Don't save the script anymore.

2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

* patch_tester.sh: Don't save the script anymore.

From-SVN: r130986

16 years agoDaily bump.
GCC Administrator [Sun, 16 Dec 2007 00:17:05 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r130984

16 years agopatch_tester.sh: New.
Sebastian Pop [Sun, 16 Dec 2007 00:08:17 +0000 (00:08 +0000)]
patch_tester.sh: New.

2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

* patch_tester.sh: New.
* prepare_patch.sh: New.

From-SVN: r130981

16 years agofastcall-1.c (f4): Change return type to void.
Danny Smith [Sat, 15 Dec 2007 23:57:36 +0000 (23:57 +0000)]
fastcall-1.c (f4): Change return type to void.

* gcc.target/i386/fastcall-1.c (f4): Change return type to
void.

From-SVN: r130980

16 years agore PR bootstrap/34003 (gcc trunk unable to bootstrap itself; Unsatisfied symbols...
Jakub Jelinek [Sat, 15 Dec 2007 23:08:47 +0000 (00:08 +0100)]
re PR bootstrap/34003 (gcc trunk unable to bootstrap itself; Unsatisfied symbols: ggc_free)

PR bootstrap/34003
* c-decl.c (merge_decls): Copy RTL from olddecl to newdecl.
* config/pa/pa.c (pa_encode_section_info): If !first, preserve
SYMBOL_FLAG_REFERENCED flag.

* gcc.dg/pr34003-1.c: New test.
* gcc.dg/pr34003-2.c: New.

From-SVN: r130979

16 years agoboost_shared_ptr.h: Add support for allocators, aliasing, make_shared and rvalue...
Jonathan Wakely [Sat, 15 Dec 2007 23:06:45 +0000 (23:06 +0000)]
boost_shared_ptr.h: Add support for allocators, aliasing, make_shared and rvalue-references.

2007-12-15  Jonathan Wakely  <jwakely-gcc@gmail.com>

* include/tr1_impl/boost_shared_ptr.h: Add support for allocators,
aliasing, make_shared and rvalue-references. Move __shared_count
and _Sp_counted_* classes to new headers.
* include/tr1_impl/boost_sp_counted_base.h: New.
* include/bits/boost_sp_shared_count.h: New.
* include/tr1/boost_sp_shared_count.h: New.
* include/std/memory, include/tr1/memory: Include new headers.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* docs/html/documentation.html: Link to shared_ptr notes.
* docs/html/20_util/shared_ptr.html: New.
* docs/html/17_intro/c++0x_status.html: Update shared_ptr status.
* testsuite/20_util/shared_ptr/cons/alias.cc: New.
* testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/assign.cc: Duplicate tr1 test.
* testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/dr541.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/casts/1.cc: Likewise.
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Likewise.
* testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/24805.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
2.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation.cc:
Remove.
* testsuite/20_util/weak_ptr/lock/1.cc: Duplicate tr1 test.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation.cc:
Remove.

From-SVN: r130978

16 years agoboost_shared_ptr.h: Add support for allocators, aliasing, make_shared and rvalue...
Jonathan Wakely [Sat, 15 Dec 2007 22:28:29 +0000 (22:28 +0000)]
boost_shared_ptr.h: Add support for allocators, aliasing, make_shared and rvalue-references.

2007-12-15  Jonathan Wakely  <jwakely-gcc@gmail.com>

* include/tr1_impl/boost_shared_ptr.h: Add support for allocators,
aliasing, make_shared and rvalue-references. Move __shared_count
and _Sp_counted_* classes to new headers.
* include/tr1_impl/boost_sp_counted_base.h: New.
* include/bits/boost_sp_shared_count.h: New.
* include/tr1/boost_sp_shared_count.h: New.
* include/std/memory, include/tr1/memory: Include new headers.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* docs/html/documentation.html: Link to shared_ptr notes.
* docs/html/20_util/shared_ptr.html: New.
* docs/html/17_intro/c++0x_status.html: Update shared_ptr status.
* testsuite/20_util/shared_ptr/cons/alias.cc: New.
* testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/assign.cc: Duplicate tr1 test.
* testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/dr541.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/casts/1.cc: Likewise.
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Likewise.
* testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/24805.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
2.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation.cc:
Remove.
* testsuite/20_util/weak_ptr/lock/1.cc: Duplicate tr1 test.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation.cc:
Remove.

From-SVN: r130977

16 years ago* sv.po: Update.
Joseph Myers [Sat, 15 Dec 2007 22:15:51 +0000 (22:15 +0000)]
* sv.po: Update.

From-SVN: r130976

16 years ago* tree.c (type_hash_add): Fix whitespace.
Alexandre Oliva [Sat, 15 Dec 2007 21:46:41 +0000 (21:46 +0000)]
* tree.c (type_hash_add): Fix whitespace.

From-SVN: r130974

16 years agoAdd CRIS v32 support. Fix -mcc-init.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:39:14 +0000 (21:39 +0000)]
Add CRIS v32 support.  Fix -mcc-init.

From-SVN: r130973

16 years ago* config/cris/cris-protos.h (cris_register_move_cost)
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:38:34 +0000 (21:38 +0000)]
* config/cris/cris-protos.h (cris_register_move_cost)
(cris_cc0_user_requires_cmp, cris_asm_output_case_end): Declare.

From-SVN: r130972

16 years agocris.md: Group related constants together, with comments local.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:38:19 +0000 (21:38 +0000)]
cris.md: Group related constants together, with comments local.

* gcc/config/cris/cris.md: Group related constants together, with
comments local.
(CRIS_UNSPEC_PLT_GOTREL, CRIS_UNSPEC_PLT_PCREL, CRIS_UNSPEC_PCREL)
(CRIS_UNSPEC_CASESI): New constants.
(CRIS_UNSPEC_PLT): Remove constant.
(CRIS_ACR_REGNUM): New constant.
("slottable"): New attr alternatives "has_return_slot" and
"has_call_slot".
("cc"): New attr alternatives "noov32" and "rev".
((eq_attr "slottable" "has_call_slot"))
((eq_attr "slottable" "has_return_slot")): New define_delays.
("movdi", "movsi"): Adjust operands for CRIS v32.
("tstdi", "cmpdi", "adddi3", "subdi3", "uminsi3")
("indirect_jump"): Ditto.  Make define_expand.
("*tstdi_non_v32", "*tstdi_v32", "*tst<mode>_cmp")
("*tst<mode>_non_cmp", "*cmpdi_non_v32", "*cmpdi_v32")
("*movdi_v32", "*adddi3_non_v32", "*adddi3_v32")
("*addsi3_non_v32", "*addsi3_v32", "*addhi3_non_v32")
("*addhi3_v32", "*addqi3_non_v32", "*addqi3_v32")
("*subdi3_non_v32", "*subdi3_v32", "*subsi3_non_v32")
("*subsi3_v32", "*sub<mode>3_nonv32", "*sub<mode>3_v32")
("*andqi3_non_v32", "*andqi3_v32", "*iorsi3_non_v32")
("*iorsi3_v32", "*iorhi3_non_v32", "*iorhi3_v32")
("*iorqi3_non_v32", "*iorqi3_v32", "*uminsi3_non_v32")
("*uminsi3_v32", "*indirect_jump_non_v32", "*indirect_jump_v32")
("*expanded_call_v32", "*expanded_call_value_v32"): New patterns,
for the corresponding standard name.
("tst<mode>"): Limit to BW and make define_expand.
("tstsi"): Make separate insn, adjusting for CRIS v32.
("*cmp_swapext<mode>"): Adjust for v32.  Specify "rev" for attr "cc".
("cmpsi", "cmp<mode>"): Remove special cases for zero.  Specify
attr "cc".
("*btst"): Don't match for TARGET_CCINIT.  Replace test of
register with compatible "cmpq 0".  Specify attr "cc".
("*movdi_insn_non_v32"): New pattern, replacing "*movdi_insn" and
define_split.
(define_split for DI move): Match CRIS v32 only.
("*movsi_got_load", "*movsi_internal", "*addi"): Adjust for CRIS
v32.
("load_multiple", "store_multiple", "*addsbw_v32", "*addubw_v32")
("*adds<mode>_v32", "*addu<mode>_v32", "*bound<mode>_v32")
("*casesi_jump_v32", "*expanded_andsi_v32", "*expanded_andhi_v32")
("*extop<mode>si_v32", "*extopqihi_v32", "*andhi_lowpart_v32")
("*andqi_lowpart_v32", "cris_casesi_v32"): New patterns.
("add<mode>3"): Make addsi3, addhi3 and addqi3 define_expand.
("sub<mode>3"): Ditto subsi3, subhi3 and subqi3.
("ior<mode>3"): Ditto iorsi3, iorhi3 and iorqi3.
("*extopqihi_non_v32"): Replace "*extopqihi".
("*extop<mode>si_non_v32"): Replace "*extop<mode>si".
("*addxqihi_swap_non_v32"): Rename from "*extopqihi_swap", make
non-v32 only.
("*extop<mode>si_swap_non_v32"): Ditto "*extop<mode>si_swap".
("*expanded_andsi_non_v32"): Ditto "*expanded_andsi".
("*expanded_andhi_non_v32"): Ditto "*expanded_andhi".
("*andhi_lowpart_non_v32"): Ditto "*andhi_lowpart".
("*andqi_lowpart_non_v32"): Ditto "*andqi_lowpart".
("*expanded_call_non_v32"): Ditto "*expanded_call".  Change from
"cris_general_operand_or_plt_symbol" to "general_operand".
("*expanded_call_value_non_v32") Ditto "*expanded_call_value".
("*casesi_adds_w", "mstep_shift", "mstep_mul")
("*expanded_call_side", "*expanded_call_value_side")
(op-extend-split, op-extend-split-rx=rz, op-extend-split-swapped)
(op-extend-split-swapped-rx=rz, op-extend, op-split-rx=rz)
(op-split-swapped, op-split-swapped-rx=rz): Make non-v32 only.
("dstep_mul", "xorsi3", "one_cmplsi2", "<shlr>si3")
("*expanded_<shlr><mode>", "*<shlr><mode>_lowpart", "ashl<mode>3")
("*ashl<mode>_lowpart", "abssi2", "clzsi2", "bswapsi2", "cris_swap_bits"): Specify "noov32" for
attr "cc".
("<su>mulsi3_highpart"): Ditto.  Correct operand 0 to
register_operand.
("andqi3"): Make define_expand.
("*return_expanded"): For attr "slottable", change from "has_slot"
to "has_return_slot".
("cris_casesi_non_v32"): New pattern, old contents of "casesi".
("casesi"): Divert into "cris_casesi_v32" and
"cris_casesi_non_v32".
(moversideqi, movemsideqi, mover2side): Require
TARGET_SIDE_EFFECT_PREFIXES.
(gotplt-to-plt, gotplt-to-plt-side): Change from CRIS_UNSPEC_PLT
to CRIS_UNSPEC_PLT_GOTREL.

From-SVN: r130971

16 years agocris.h: Sanity-check TARGET_CPU_DEFAULT for contents.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:37:55 +0000 (21:37 +0000)]
cris.h: Sanity-check TARGET_CPU_DEFAULT for contents.

* config/cris/cris.h: Sanity-check TARGET_CPU_DEFAULT for contents.
(CRIS_DEFAULT_TUNE, CRIS_ARCH_CPP_DEFAULT)
(CRIS_DEFAULT_ASM_ARCH_OPTION): New macros.
(CRIS_CC1_SUBTARGET_SPEC): Change default tuning to use
CRIS_DEFAULT_TUNE.
(CRIS_CPP_SUBTARGET_SPEC): Ditto.  Add CRIS_ARCH_CPP_DEFAULT.
(ASM_SPEC): Add sanity-check erroring out when both -march= and
-mcpu= are specified.  Pass on either as --march=v32.
(CRIS_ASM_SUBTARGET_SPEC): When neither -march= or -mcpu= are
specified, pass on CRIS_DEFAULT_ASM_ARCH_OPTION.
(CRIS_CPU_V32): New macro.
[!TARGET_CPU_DEFAULT]: Default-define as CRIS_CPU_BASE.
[!TARGET_DEFAULT, TARGET_CPU_DEFAULT == 32]: Move default
TARGET_DEFAULT definition after new TARGET_CPU_DEFAULT definition.
Define v32-adjusted TARGET_DEFAULT.
(CRIS_DEFAULT_CPU_VERSION): Change to TARGET_CPU_DEFAULT from
CRIS_CPU_BASE.
(TARGET_V32): New macro.
(REG_ALLOC_ORDER_V32): New macro.
(HARD_REGNO_MODE_OK): Do not allow larger-than-register-size modes
into CRIS_ACR_REGNUM.
(enum reg_class): New classes ACR_REGS, SPEC_ACR_REGS,
GENNONACR_REGS and SPEC_GENNONACR_REGS.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Adjust for new classes.
(REGNO_REG_CLASS): Give ACR_REGS for CRIS_ACR_REGNUM.
(MODE_CODE_BASE_REG_CLASS): Define, give for OCODE POST_INC
GENNONACR_REGS, BASE_REG_CLASS otherwise.
(REG_CLASS_FROM_LETTER): 'a' is for ACR_REGS.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Define, refusing OCODE POST_INC
for CRIS_ACR_REGNUM.
(PREFERRED_RELOAD_CLASS): Keep ACR_REGS as preferred.
(HARD_REGNO_RENAME_OK): Refuse CRIS_ACR_REGNUM as TO.
(EXTRA_CONSTRAINT): New constraint 'U'.
(TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE)
(ASM_OUTPUT_ADDR_DIFF_ELT): Adjust for CRIS v32.
(BASE_OR_AUTOINCR_P): Refuse POST_INC for CRIS_ACR_REGNUM.
(SIMPLE_ADDRESS_P): Remove.
(GO_IF_LEGITIMATE_ADDRESS): Use BASE_OR_AUTOINCR_P, not redundant
SIMPLE_ADDRESS_P.  Make one chained if-else, finishing as
non-match after BASE_OR_AUTOINCR_P for TARGET_V32.
(REGISTER_MOVE_COST): Just call the new function
cris_register_move_cost.
(enum cris_pic_symbol_type): Rename cris_gotrel_symbol to
cris_rel_symbol.  All users changed.
(REGISTER_NAMES): Replace "pc" with "acr".
(ADDITIONAL_REGISTER_NAMES): Add "pc" for 15.
(ASM_OUTPUT_REG_PUSH): Change to v32-compatible sequence.
(ASM_OUTPUT_REG_POP): Change to v32-compatible syntax.
(ASM_OUTPUT_CASE_END): Just call the new function
cris_asm_output_case_end.

From-SVN: r130970

16 years agolinux.h: Sanity-check TARGET_CPU_DEFAULT for presence and contents.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:37:37 +0000 (21:37 +0000)]
linux.h: Sanity-check TARGET_CPU_DEFAULT for presence and contents.

* config/cris/linux.h: Sanity-check TARGET_CPU_DEFAULT for
presence and contents.
(CRIS_SUBTARGET_DEFAULT_ARCH): New macro, MASK_AVOID_GOTPLT for
v32, 0 otherwise.
(CRIS_CPP_SUBTARGET_SPEC, CRIS_CC1_SUBTARGET_SPEC,
CRIS_ASM_SUBTARGET_SPEC): Adjust for different
TARGET_CPU_DEFAULT.
(CRIS_SUBTARGET_DEFAULT): Add CRIS_SUBTARGET_DEFAULT_ARCH.

From-SVN: r130969

16 years ago* config/cris/predicates.md
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:37:22 +0000 (21:37 +0000)]
* config/cris/predicates.md
("cris_general_operand_or_pic_source"): New predicate.
("cris_general_operand_or_plt_symbol"): Replace by...
("cris_nonmemory_operand_or_callable_symbol"): New predicate.

From-SVN: r130968

16 years ago* config/cris/t-elfmulti: Add multilib v32 for -march=v32.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:37:10 +0000 (21:37 +0000)]
* config/cris/t-elfmulti: Add multilib v32 for -march=v32.

From-SVN: r130967

16 years agocris.c (ASSERT_PLT_UNSPEC): Remove unused macro.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:36:30 +0000 (21:36 +0000)]
cris.c (ASSERT_PLT_UNSPEC): Remove unused macro.

* config/cris/cris.c (ASSERT_PLT_UNSPEC): Remove unused macro.
(cris_movem_load_rest_p, cris_store_multiple_op_p): Remove FIXME.
Change regno_dir and regno only if !TARGET_V32.
(cris_conditional_register_usage): If TARGET_V32, set
reg_alloc_order as per REG_ALLOC_ORDER_V32 and make
CRIS_ACR_REGNUM non-fixed.
(cris_print_base): Add gcc_assert for post_inc on CRIS_ACR_REGNUM.
(cris_print_operand) <case 'Z', case 'u'>: New cases.
<case REG of case 'H'>: Allow for CRIS_SRP_REGNUM.
(cris_reload_address_legitimized): Always return false for
TARGET_V32.
(cris_register_move_cost): New function, guts from
REGISTER_MOVE_COST adjusted for CRIS v32.
(cris_normal_notice_update_cc): New function split out from...
(cris_notice_update_cc): Set cc_status.flags CC_REVERSED for
TARGET_CCINIT.  Call cris_normal_notice_update_cc for CC_REV,
CC_NOOV32 and CC_NORMAL, but set cc_status.flags CC_NO_OVERFLOW
for CC_NOOV32 and TARGET_V32.
(cris_simple_epilogue): Always return false for TARGET_V32 if
cris_return_address_on_stack yields true.
(cris_cc0_user_requires_cmp): New function.
(cris_valid_pic_const): Add argument ANY_OPERAND.  All callers
changed.  Handle CRIS_UNSPEC_PLT_PCREL and CRIS_UNSPEC_PCREL.
(cris_asm_output_case_end): New function, guts from
ASM_OUTPUT_CASE_END adjusted for CRIS v32.
(cris_override_options): Adjust for CRIS v32.  Mask out
TARGET_SIDE_EFFECT_PREFIXES and TARGET_MUL_BUG if v32.
(cris_asm_output_mi_thunk, cris_expand_epilogue)
(cris_gen_movem_load, cris_emit_movem_store)
(cris_expand_pic_call_address, cris_asm_output_symbol_ref)
(cris_asm_output_label_ref, cris_output_addr_const_extra): Adjust
for CRIS v32.
(cris_split_movdx): Copy re-used MEM.

From-SVN: r130966

16 years agoconfig.gcc: Make crisv32-* have cpu_type cris.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:35:32 +0000 (21:35 +0000)]
config.gcc: Make crisv32-* have cpu_type cris.

* config.gcc: Make crisv32-* have cpu_type cris.  Handle
crisv32-*-elf and crisv32-*-none like cris-*-elf and cris-*-none
but without multilibs and with target_cpu_default=32.

From-SVN: r130965

16 years agoconfig.host (crisv32-*-elf, [...]): New, same as cris-*-elf and cris-*-none.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:34:23 +0000 (21:34 +0000)]
config.host (crisv32-*-elf, [...]): New, same as cris-*-elf and cris-*-none.

* config.host (crisv32-*-elf, crisv32-*-none): New, same as
cris-*-elf and cris-*-none.
(crisv32-*-linux*): Similar, as cris-*-linux*.

From-SVN: r130964

16 years agoconfigure.host (try_cpu settings): Set try_cpu=cris for crisv32.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:33:45 +0000 (21:33 +0000)]
configure.host (try_cpu settings): Set try_cpu=cris for crisv32.

* configure.host (try_cpu settings): Set try_cpu=cris for crisv32.
* config/cpu/cris/atomicity.h (__exchange_and_add)
[__CRIS_arch_version >= 32]: Add support for CRIS v32.

From-SVN: r130963

16 years agopeep2-xsrand.c, [...]: Drop redundant target-specifier.
Hans-Peter Nilsson [Sat, 15 Dec 2007 21:31:18 +0000 (21:31 +0000)]
peep2-xsrand.c, [...]: Drop redundant target-specifier.

* gcc.target/cris/peep2-xsrand.c, gcc.target/cris/asmreg-1.c,
gcc.target/cris/peep2-andu1.c, gcc.target/cris/peep2-xsrand2.c,
gcc.target/cris/20011127-1.c: Drop redundant target-specifier.
* gcc.target/cris/peep2-andu2.c: Ditto.  Make dg-do assemble and
add -save-temps.
* gcc.target/cris/torture/cris-torture.exp,
gcc.target/cris/cris.exp: Run for crisv32-*-* too.
* gcc.target/cris/builtin_ctz_v3.c,
gcc.target/cris/builtin_ctz_v8.c,
gcc.target/cris/builtin_clz_v0.c,
gcc.target/cris/builtin_clz_v3.c,
gcc.target/cris/builtin_bswap_v3.c,
gcc.target/cris/builtin_bswap_v8.c, gcc.dg/sibcall-4.c,
gcc.dg/pr19340.c, gcc.dg/20020919-1.c, gcc.dg/pr31866.c,
gcc.dg/torture/cris-asm-mof-1.c, gcc.dg/torture/cris-volatile-1.c,
gcc.dg/weak/typeof-2.c, gcc.dg/tree-ssa/loop-1.c,
gcc.dg/tree-ssa/20040204-1.c, gcc.dg/sibcall-3.c,
lib/target-supports.exp: Adjust for crisv32-*-*.

From-SVN: r130962

16 years agoMAINTAINERS: Update my email address.
Sebastian Pop [Sat, 15 Dec 2007 20:54:04 +0000 (20:54 +0000)]
MAINTAINERS: Update my email address.

2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

* MAINTAINERS: Update my email address.

From-SVN: r130961

16 years agore PR debug/7081 (DWARF enhancements for C++)
Alexandre Oliva [Sat, 15 Dec 2007 20:19:23 +0000 (20:19 +0000)]
re PR debug/7081 (DWARF enhancements for C++)

gcc/ChangeLog:
PR debug/7081
* dwarf2out.c (dwarf_tag_name): Synchronize with dwarf2.h.
(is_type_die): Cover interface types.
(class_or_namespace_scope_p): Cover interface and class types.
(record_type_tag): New.
(gen_inlined_structure_type_die): Use it.
(gen_struct_or_union_type_die): Likewise.
(prune_unused_types_walk): Cover interface types.
* langhooks.h (classify_record): New enum.
(classify_record): New member in struct langhooks_for_types.
* langhooks-def.h (LANG_HOOKS_CLASSIFY_RECORD): New.
(LANGHOOKS_FOR_TYPES_INITIALIZER): Adjust.
gcc/cp/ChangeLog:
PR debug/7081
* cp-lang.c (cp_classify_record): New.
(LANG_HOOKS_CLASSIFY_RECORD): Override.
gcc/java/ChangeLog:
PR debug/7081
* lang.c (java_classify_record): New.
(LANG_HOOKS_CLASSIFY_RECORD): Override.

From-SVN: r130960

16 years agodwarf2out.c (reference_to_unused): Don't emit strings in initializers just because...
Alexandre Oliva [Sat, 15 Dec 2007 20:16:03 +0000 (20:16 +0000)]
dwarf2out.c (reference_to_unused): Don't emit strings in initializers just because of debug information.

gcc/ChangeLog:
* dwarf2out.c (reference_to_unused): Don't emit strings in
initializers just because of debug information.
* tree.h (TREE_ASM_WRITTEN): Document use for STRING_CSTs.
gcc/testsuite/ChangeLog:
* gcc.dg/debug/const-3.c: New.

From-SVN: r130959

16 years agodatasec1.C: Require named section support.
John David Anglin [Sat, 15 Dec 2007 19:45:41 +0000 (19:45 +0000)]
datasec1.C: Require named section support.

* g++.dg/other/datasec1.C: Require named section support.

From-SVN: r130958

16 years agotree-scalar-evolution.c (number_of_iterations_for_all_loops): Replace print_loop_ir...
Sebastian Pop [Sat, 15 Dec 2007 18:35:23 +0000 (18:35 +0000)]
tree-scalar-evolution.c (number_of_iterations_for_all_loops): Replace print_loop_ir with print_loops.

2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

* tree-scalar-evolution.c (number_of_iterations_for_all_loops): Replace
print_loop_ir with print_loops.
* tree-flow.h (dot_cfg, debug_loops, debug_loop, debug_loop_num,
print_loops, print_loops_bb): Declare.
* tree-cfg.c (print_loops_bb): New.
(print_loop): Print header, latch, bounds, estimation of iterations.
(print_loop_and_siblings): New.
(print_loop_ir): Renamed print_loops.
(debug_loop_ir): Renamed debug_loops.
(debug_loop, debug_loop_num): New.

From-SVN: r130957

16 years agopartial_sum.h: Include new.
Benjamin Kosnik [Sat, 15 Dec 2007 16:19:37 +0000 (16:19 +0000)]
partial_sum.h: Include new.

2007-12-15  Benjamin Kosnik  <bkoz@redhat.com>
    Paolo Carlini  <pcarlini@suse.de>

* include/parallel/partial_sum.h: Include new. Fix for DR 402.
* include/parallel/multiway_merge.h:Fix for DR 402.
* include/parallel/losertree.h: Same.
* include/parallel/quicksort.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/multiway_mergesort.h: Same.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r130956

16 years agoMAINTAINERS: Update my email address.
Bernhard Reutner-Fischer [Sat, 15 Dec 2007 15:41:53 +0000 (16:41 +0100)]
MAINTAINERS: Update my email address.

2007-12-15  Bernhard Fischer  <aldot@gcc.gnu.org>

* MAINTAINERS: Update my email address.

From-SVN: r130955

16 years agotree-flow-inline.h.c (next_readonly_imm_use): Fix typo in comment.
Bernhard Fischer [Sat, 15 Dec 2007 15:35:32 +0000 (16:35 +0100)]
tree-flow-inline.h.c (next_readonly_imm_use): Fix typo in comment.

2007-12-15  Bernhard Fischer  <aldot@gcc.gnu.org>

* tree-flow-inline.h.c (next_readonly_imm_use): Fix typo in comment.

From-SVN: r130954

16 years agotoplev.c (process_options): Fix typo in warning.
Bernhard Fischer [Sat, 15 Dec 2007 15:25:41 +0000 (16:25 +0100)]
toplev.c (process_options): Fix typo in warning.

2007-12-15  Bernhard Fischer  <>

* toplev.c (process_options): Fix typo in warning.

From-SVN: r130953

16 years ago* Make-lang.in (gnat1, gnatbind): Pass ALL_CFLAGS on the link line.
Jakub Jelinek [Sat, 15 Dec 2007 07:52:23 +0000 (08:52 +0100)]
* Make-lang.in (gnat1, gnatbind): Pass ALL_CFLAGS on the link line.

From-SVN: r130952

16 years agoDaily bump.
GCC Administrator [Sat, 15 Dec 2007 00:17:22 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r130950

16 years agore PR libstdc++/30127 (std::has_facet returns true for not installed derived facets)
Benjamin Kosnik [Fri, 14 Dec 2007 19:32:03 +0000 (19:32 +0000)]
re PR libstdc++/30127 (std::has_facet returns true for not installed derived facets)

2007-12-14  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/30127
PR libstdc++/34449
* include/bits/locale_classes.h (use_facet): Check facet hierarchy.
(has_facet): Same.
* testsuite/22_locale/global_templates/user_facet_hierarchies.cc: New.
* testsuite/22_locale/global_templates/
standard_facet_hierarchies.cc: New.

From-SVN: r130941

16 years agore PR target/29978 (redundant jumps)
Jakub Jelinek [Fri, 14 Dec 2007 18:00:39 +0000 (19:00 +0100)]
re PR target/29978 (redundant jumps)

PR target/29978
* config/i386/i386.c (ix86_expand_branch): Optimize LE/LEU/GT/GTU
DImode comparisons against constant with all 1's in the lower word.

* gcc.target/i386/pr29978.c: New test.

From-SVN: r130938

16 years agodf-core.c: Update comments referring to removed features.
Paolo Bonzini [Fri, 14 Dec 2007 17:40:46 +0000 (17:40 +0000)]
df-core.c: Update comments referring to removed features.

2007-12-14  Paolo Bonzini  <bonzini@gnu.org>

* df-core.c: Update comments referring to removed features.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* df.h: Likewise.

From-SVN: r130937

16 years agosse.md (sse4_2_pcmpestr): Use reg_not_xmm0_operand constraint for operand2.
Uros Bizjak [Fri, 14 Dec 2007 15:33:34 +0000 (16:33 +0100)]
sse.md (sse4_2_pcmpestr): Use reg_not_xmm0_operand constraint for operand2.

* config/i386/sse.md (sse4_2_pcmpestr): Use reg_not_xmm0_operand
constraint for operand2.  Use nonimm_not_xmm0_operand constraint
for operand 4.  Update arguments in the call to
gen_sse4_2_pcmpestr_cconly.
(sse_4_2_pcmpestr_cconly): Renumber insn operands and update insn
template accordingly.
(sse4_2_pcmpistr): Use reg_not_xmm0_operand constraint for operand2.
Use nonimm_not_xmm0_operand constraint for operand 3.  Update
arguments in the call to gen_sse4_2_pcmpistr_cconly.
(sse_4_2_pcmpistr_cconly): Renumber insn operands and update insn

testsuite/ChangeLog:

* gcc.target/i386/sse-12.c (dg-options): Use -msse4
instead of -msse4.1.
* gcc.target/i386/sse-12.c (dg-options): Ditto.
* g++.dg/other/i386-2.C (dg-options): Ditto.

From-SVN: r130934

16 years agore PR fortran/34438 (gfortran not compliant w.r.t default initialization of derived...
Tobias Burnus [Fri, 14 Dec 2007 15:14:29 +0000 (16:14 +0100)]
re PR fortran/34438 (gfortran not compliant w.r.t default initialization of derived type component and implicit SAVE attribute)

2007-12-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34438
        * resolve.c (resolve_symbol): Do not emit public-variable-
        of-private-derived-type error for non-module variables.

2007-12-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34438
        * gfortran.dg/private_type_10.f90: New.

From-SVN: r130933

16 years agore PR fortran/34398 (BOZ literals: Range checks)
Tobias Burnus [Fri, 14 Dec 2007 15:11:17 +0000 (16:11 +0100)]
re PR fortran/34398 (BOZ literals: Range checks)

2007-12-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34398
        * expr.c (gfc_check_assign): Add range checks for assignments of
        * BOZs.
        * resolve.c (resolve_ordinary_assign): Ditto.
        * arith.c (gfc_range_check): Fix return value for complex
        * numbers.

2007-12-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34398
        * gfortran.dg/nan_4.f90: New.

From-SVN: r130932

16 years agore PR middle-end/34462 (tree check: expected ssa_name, have struct_field_tag in vuses...
Richard Guenther [Fri, 14 Dec 2007 14:21:41 +0000 (14:21 +0000)]
re PR middle-end/34462 (tree check: expected ssa_name, have struct_field_tag in vuses_compare, at tree-vn.c:118)

2007-12-14  Richard Guenther  <rguenther@suse.de>

PR middle-end/34462
* tree-ssa-operands.h (create_ssa_artificial_load_stmt): Add
parameter to say whether to unlink immediate uses.
* tree-ssa-operands.c (create_ssa_artificial_load_stmt): Do not
mark the artificial stmt as modified.  Unlink immediate uses
only if requested.
* tree-ssa-dom.c (record_equivalences_from_stmt): Update caller.
* tree-ssa-pre.c (insert_fake_stores): Likewise.

* gcc.c-torture/compile/20071214-1.c: New testcase.

From-SVN: r130931

16 years agosse-14.c (test_1, [...]): New macros to test macroized SSE intrinsics.
Uros Bizjak [Fri, 14 Dec 2007 12:43:57 +0000 (13:43 +0100)]
sse-14.c (test_1, [...]): New macros to test macroized SSE intrinsics.

* gcc.target/i386/sse-14.c (test_1, test_2, test_2x, test_4): New
macros to test macroized SSE intrinsics.  Use new macros to test
macroized SSE intrinsics from ammintrin.h, smmintrin.h, tmmintrin.h,
emmintrin.h, xmmintrin.h and bmmintrin.h
* gcc.target/i386/sse-13.c (__builtin_ia32_pcmp?str*128): Redefine
to test with immediate operand.

From-SVN: r130930

16 years agore PR fortran/34324 (Module files on CRLF systems)
Daniel Franke [Fri, 14 Dec 2007 10:25:12 +0000 (05:25 -0500)]
re PR fortran/34324 (Module files on CRLF systems)

2007-12-14  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/34324
        * module.c (parse_atom): Fixed parsing of modules files whose
        lines are terminated by CRLF.

From-SVN: r130928

16 years agore PR target/34091 (ICE in reload_cse_simplify_operands, at postreload.c:392)
John David Anglin [Fri, 14 Dec 2007 01:01:58 +0000 (01:01 +0000)]
re PR target/34091 (ICE in reload_cse_simplify_operands, at postreload.c:392)

PR target/34091
* gcc.c-torture/compile/pr34091.c: New test.

From-SVN: r130927

16 years agoDaily bump.
GCC Administrator [Fri, 14 Dec 2007 00:17:21 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r130925

16 years agore PR middle-end/33088 (spurious exceptions with -ffloat-store)
Eric Botcazou [Thu, 13 Dec 2007 21:49:09 +0000 (22:49 +0100)]
re PR middle-end/33088 (spurious exceptions with -ffloat-store)

PR middle-end/33088
* gimplify.c (gimplify_modify_expr_complex_part): Add note to comment.
* tree-complex.c (init_dont_simulate_again): Return true if there are
uninitialized loads generated by gimplify_modify_expr_complex_part.
* tree-gimple.c (is_gimple_reg_type): Return false for complex types
if not optimizing.
* tree-ssa.c (ssa_undefined_value_p): New predicate extracted from...
(warn_uninit): ...here.  Use ssa_undefined_value_p.
* tree-ssa-pre.c (is_undefined_value): Delete.
(phi_translate_1): Use ssa_undefined_value_p.
(add_to_exp_gen): Likewise.
(make_values_for_stmt): Likewise.
* tree-flow.h (ssa_undefined_value_p): Declare.

From-SVN: r130917

16 years agostruct-reorg.exp: Replace DEFAULT_CFLAGS by STRUCT_REORG_CFLAFS.
Olga Golovanevsky [Thu, 13 Dec 2007 20:50:38 +0000 (20:50 +0000)]
struct-reorg.exp: Replace DEFAULT_CFLAGS by STRUCT_REORG_CFLAFS.

2007-12-13  Olga Golovanevsky  <olga@il.ibm.com>

* gcc.dg/struct/struct-reorg.exp: Replace
 DEFAULT_CFLAGS by STRUCT_REORG_CFLAFS.

From-SVN: r130916

16 years ago[multiple changes]
Tobias Burnus [Thu, 13 Dec 2007 20:31:45 +0000 (21:31 +0100)]
[multiple changes]

2007-12-13  Anton Korobeynikov  <asl@math.spbu.ru>

        * trans-decl.c (gfc_build_builtin_function_decls): Correct decl
        construction for select_string() and internal_unpack()

2007-12-13  Duncan Sands  <baldrick@free.fr>
            Anton Korobeynikov  <asl@math.spbu.ru>

        * trans-expr.c (gfc_conv_structure): Make sure record
        * constructors
        for static variables are marked constant.

From-SVN: r130914

16 years agore PR libfortran/34370 (file positioning after nonadvancing i/o)
Thomas Koenig [Thu, 13 Dec 2007 19:35:09 +0000 (19:35 +0000)]
re PR libfortran/34370 (file positioning after nonadvancing i/o)

2007-12-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/34370
PR libfortran/34323
PR libfortran/34405
* io/io.h:  Add previous_nonadvancing_write to gfc_unit.
Add prototype for finish_last_advance_record.
* io/file_pos.c (st_backspace):  Generate error if backspace is
attempted for direct access or unformatted stream.
If there are bytes left from a previous ADVANCE="no", write
them out before performing the backspace.
(st_endfile):  Generate error if endfile is attempted for
direct access.
If there are bytes left from a previous ADVANCE="no", write
them out before performing the endfile.
(st_rewind):  Generate error if rewind is attempted for
direct access.
* unit.c (close_unit_1):  Move functionality to write
previously written bytes to...
(finish_last_advance_record):  ... here.
* transfer.c (data_transfer_init):  If reading, reset
previous_nonadvancing_write.
(finalize_transfer):  Set the previous_noadvancing_write
flag if we are writing and ADVANCE="no" was specified.
Only call next_record() if advance="no" wasn't specified.

2007-12-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/34370
PR libfortran/34323
PR libfortran/34405
* gfortran.dg/advance_6.f90:  New test case.
* gfortran.dg/direct_io_7.f90:  New test case.
* gfortran.dg/streamio_13.f90:  New test case.

From-SVN: r130912

16 years ago__func__.C: New.
Douglas Gregor [Thu, 13 Dec 2007 19:29:52 +0000 (19:29 +0000)]
__func__.C: New.

2007-12-13  Douglas Gregor  <doug.gregor@gmail.com>

* g++.dg/cpp0x/__func__.C: New.

From-SVN: r130911

16 years agore PR bootstrap/34144 (Revision 130005 causes bootstrap failure with --disable-checking)
Andrew Pinski [Thu, 13 Dec 2007 19:19:17 +0000 (11:19 -0800)]
re PR bootstrap/34144 (Revision 130005 causes bootstrap failure with --disable-checking)

2007-12-13  Andrew Pinski  <pinskia@gmail.com>
    David Daney  <ddaney@avtrex.com>

PR bootstrap/34144
* system.h: Make -Wuninitialized non-fatal if ASSERT_CHECKING
is disabled.

Co-Authored-By: David Daney <ddaney@avtrex.com>
From-SVN: r130908

16 years agore PR rtl-optimization/32636 (25_algorithms/search_n/iterator.cc: miscompiled on...
Jakub Jelinek [Thu, 13 Dec 2007 19:05:37 +0000 (20:05 +0100)]
re PR rtl-optimization/32636 (25_algorithms/search_n/iterator.cc: miscompiled on hppa2.0w-hp-hpux11.11)

PR rtl-optimization/32636
* df-scan.c (df_get_entry_block_def_set): Set struct_value_rtx
regno in entry_block_defs even if HAVE_prologue && epilogue_completed.

From-SVN: r130907

16 years agoFogot to commit ipa-struct-reorg.c
Olga Golovanevsky [Thu, 13 Dec 2007 18:59:44 +0000 (18:59 +0000)]
Fogot to commit ipa-struct-reorg.c

From-SVN: r130906

16 years agore PR target/34435 (SSE2 intrinsics - emmintrin with optimisations off and type conve...
Uros Bizjak [Thu, 13 Dec 2007 18:19:38 +0000 (19:19 +0100)]
re PR target/34435 (SSE2 intrinsics - emmintrin with optimisations off and type conversion error)

        PR target/34435
        * config/i386/emmintrin.h (_mm_shuffle_pd, _mm_extract_epi16,
        _mm_insert_epi16, _mm_shufflehi_epi16, _mm_shufflelo_epi16,
        _mm_shuffle_epi32): Cast non-constant input values to either __m64,
        __m128, __m128i or __m128d in a macro version of the intrinsic.
        Cast constant input values to int.
        * config/i386/ammintrin.h (_mm_extracti_si64, _mm_inserti_si64): Ditto.
        * config/i386/bmmintrin.h (_mm_roti_epi8, _mm_roti_epi16,
        _mm_roti_epi32, _mm_roti_epi64): Ditto.
        * config/i386/smmintrin.h (_mm_blend_epi16, _mm_blend_ps, _mm_blend_pd,
        _mm_dp_ps, _mm_dp_pd, _mm_insert_ps, _mm_extract_ps, _mm_insert_epi8,
        _mm_insert_epi32, _mm_insert_epi64, _mm_extract_epi8, mm_extract_epi32,
        _mm_extract_epi64, _mm_mpsadbw_epu8, _mm_cmpistrm, _mm_cmpistri,
        _mm_cmpestrm, _mm_cmpestri, _mm_cmpistra, _mm_cmpistrc, _mm_cmpistro,
        _mm_cmpistrs, _mm_cmpistrz, _mm_cmpestra, _mm_cmpestrc, _mm_cmpestro,
        _mm_cmpestrs, _mm_cmpestrz): Ditto.
        * config/i386/tmmintrin.h (_mm_alignr_epi8, _mm_alignr_pi8): Ditto.
        * config/i386/xmmintrin.h (_mm_shuffle_ps, _mm_extract_pi16, _m_pextrw,
        _mm_insert_pi16, _m_pinsrw, _mm_shuffle_pi16, _m_pshufw): Ditto.
        * config/i386/mmintrin-common.h (_mm_round_pd, _mm_round_sd,
        _mm_round_ps, _mm_round_ss): Ditto.

testsuite/ChangeLog:

        PR target/34435
        * g++.dg/other/pr34435.C: New testcase.

From-SVN: r130904

16 years agoRestore part of patch lost for PR ada/15805:
Arnaud Charlet [Thu, 13 Dec 2007 17:59:09 +0000 (18:59 +0100)]
Restore part of patch lost for PR ada/15805:

* sem_ch3.adb (Analyze_Object_Declaration): Signal an error
when an access to constant is used to initialize an access
value.

From-SVN: r130903

16 years agore PR ada/34360 (typo gcc/ada/Makefile.in for GNU/kFreeBSD)
Samuel Tardieu [Thu, 13 Dec 2007 15:14:54 +0000 (15:14 +0000)]
re PR ada/34360 (typo gcc/ada/Makefile.in for GNU/kFreeBSD)

    gcc/ada/
PR ada/34360
* Makefile.in: Change two occurrences of mlib-tgt.adb by correct name
mlib-tgt-specific.adb.

From-SVN: r130896

16 years agore PR middle-end/34450 (compile takes up 1.8 GB RAM at -O1)
Richard Guenther [Thu, 13 Dec 2007 14:22:23 +0000 (14:22 +0000)]
re PR middle-end/34450 (compile takes up 1.8 GB RAM at -O1)

2007-12-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/34450
* params.def (PARAM_SCCVN_MAX_SCC_SIZE): New param.
* invoke.texi (sccvn-max-scc-size): Document.
* Makefile.in (tree-ssa-sccvn.o): Add $(PARAMS_H) dependency.
* tree-ssa-sccvn.h (run_scc_vn): Return true on success, false
on error.
* tree-ssa-sccvn.c (params.h): Include.
(DFS): Return true if all went well, return false as soon as
a SCC exceeds the size of PARAM_SCCVN_MAX_SCC_SIZE.
(run_scc_vn): Return true if all went well, return false if
we aborted during DFS.
* tree-ssa-pre.c (execute_pre): Check if SCCVN finished
successfully, otherwise bail out.

From-SVN: r130895

16 years agoipa-struct-reorg.c (is_candidate): Print information to dump file when the type is...
Olga Golovanevsky [Thu, 13 Dec 2007 13:58:18 +0000 (13:58 +0000)]
ipa-struct-reorg.c (is_candidate): Print information to dump file when the type is initialized.

2007-12-13  Olga Golovanevsky  <olga@il.ibm.com>

* ipa-struct-reorg.c (is_candidate): Print information to dump
file when the type is initialized.
(get_stmt_accesses):  Likewise when a structure has bitfields
or field access is too complicate.
(safe_cond_expr_check): Likewise for unsafe condition expressions.
(exclude_cold_structs): Likewise for cold structures.
(collect_structures): Suppress redundant print when there are
no structures to transform.
(do_reorg): Print to dump file a number of structures that
will be transformed.
(dump_new_types): Print a number of new types to replace
an original structure type.

From-SVN: r130894

16 years agostruct: New directory with tests for struct-reorg optimizaion.
Olga Golovanevsky [Thu, 13 Dec 2007 13:47:22 +0000 (13:47 +0000)]
struct: New directory with tests for struct-reorg optimizaion.

2007-11-26  Olga Golovanevsky  <olga@il.ibm.com>

* gcc.dg/struct: New directory with tests
for struct-reorg optimizaion.
* gcc.dg/struct/struct-reorg.exp: New script.
* gcc.dg/struct/wo_prof_array_through_pointer.c: New test.
* gcc.dg/struct/wo_prof_malloc_size_var.c: Likewise.
* gcc.dg/struct/wo_prof_mult_field_peeling.c: Likewise.
* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Likewise.
* gcc.dg/struct/wo_prof_escape_return.c: Likewise.
* gcc.dg/struct/wo_prof_escape_str_init.c: Likewise.
* gcc.dg/struct/wo_prof_escape_substr_array.c: Likewise.
* gcc.dg/struct/wo_prof_escape_substr_pointer.c: Likewise.
* gcc.dg/struct/wo_prof_escape_substr_value.c: Likewise.
* gcc.dg/struct/wo_prof_global_array.c: Likewise.
* gcc.dg/struct/wo_prof_global_var.c: Likewise.
* gcc.dg/struct/wo_prof_local_array.c: Likewise.
* gcc.dg/struct/wo_prof_local_var.c: Likewise.
* gcc.dg/struct/wo_prof_two_strs.c: Likewise.
* gcc.dg/struct/wo_prof_single_str_global.c: Likewise.
* gcc.dg/struct/wo_prof_single_str_local.c: Likewise.
* gcc.dg/struct/wo_prof_single_str_pointer.c: Likewise.
* gcc.dg/struct/w_prof_two_strs.c: Likewise.
* gcc.dg/struct/w_prof_global_array.c: Likewise.
* gcc.dg/struct/w_prof_global_var.c: Likewise.
* gcc.dg/struct/w_prof_local_array.c: Likewise.
* gcc.dg/struct/w_prof_local_var.c: Likewise.
* gcc.dg/struct/w_prof_single_str_global.c: Likewise.
* gcc.dg/struct/w_ratio_cold_str.c: Likewise.

From-SVN: r130893

16 years ago(Attribute_to_gnu): Check for violations of the No_Implicit_Dynamic_Code restriction.
Bob Duff [Thu, 13 Dec 2007 11:33:49 +0000 (11:33 +0000)]
(Attribute_to_gnu): Check for violations of the No_Implicit_Dynamic_Code restriction.

(Attribute_to_gnu): Check for violations of the No_Implicit_Dynamic_Code
  restriction. This checking used to be done in the front end, but is
moved here so we can make it more accurate.

From-SVN: r130892

16 years agoResync
Arnaud Charlet [Thu, 13 Dec 2007 11:27:52 +0000 (12:27 +0100)]
Resync

From-SVN: r130891

16 years agoinvoke.texi (Optimiza Options): Document new -fipa-struct-reorg option and struct...
Golovanevsky Olga [Thu, 13 Dec 2007 11:11:57 +0000 (11:11 +0000)]
invoke.texi (Optimiza Options): Document new -fipa-struct-reorg option and struct-reorg-cold-struct-ratio parameter.

2007-12-13  Golovanevsky Olga  <olga@il.ibm.com>

* doc/invoke.texi (Optimiza Options): Document new -fipa-struct-reorg
option and struct-reorg-cold-struct-ratio parameter.

From-SVN: r130890

16 years agore PR libfortran/34427 (Revision 130708 breaks namelist input)
Tobias Burnus [Thu, 13 Dec 2007 11:01:00 +0000 (12:01 +0100)]
re PR libfortran/34427 (Revision 130708 breaks namelist input)

2007-12-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34427
        * io/list_read.c (read_real): Fix unwinding for namelists.

2007-12-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34427
        * gfortran.dg/namelist_42.f90: New.

From-SVN: r130889

16 years agoUpdate comments.
Arnaud Charlet [Thu, 13 Dec 2007 10:59:30 +0000 (11:59 +0100)]
Update comments.

Minor reformatting.
Kill new warnings.

From-SVN: r130888

16 years ago(Nkind_In): New functions.
Arnaud Charlet [Thu, 13 Dec 2007 10:56:34 +0000 (11:56 +0100)]
(Nkind_In): New functions.

Add support for new flags.

From-SVN: r130887

16 years agoRemoved, no longer used
Arnaud Charlet [Thu, 13 Dec 2007 10:53:49 +0000 (11:53 +0100)]
Removed, no longer used

From-SVN: r130886

16 years agoNew file.
Arnaud Charlet [Thu, 13 Dec 2007 10:52:39 +0000 (11:52 +0100)]
New file.

From-SVN: r130885

16 years agoNew file.
Arnaud Charlet [Thu, 13 Dec 2007 10:50:30 +0000 (11:50 +0100)]
New file.

From-SVN: r130884

16 years agosem_ch3.ads, [...] (Check_Abstract_Overriding): Avoid generation of spurious error...
Javier Miranda [Thu, 13 Dec 2007 10:48:09 +0000 (11:48 +0100)]
sem_ch3.ads, [...] (Check_Abstract_Overriding): Avoid generation of spurious error if parent is an interface type...

2007-12-06  Javier Miranda  <miranda@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.ads, sem_ch3.adb (Check_Abstract_Overriding): Avoid
generation of spurious error if parent is an interface type; caused
because predefined primitive bodies will be generated later by
Freeze_Record_Type.
(Process_Subtype): The subtype inherits the Known_To_Have_Preelab_Init
flag.
(Derive_Subprograms): Handle derivations of predefined primitives
after all the user-defined primitives to ensure that they are
found in proper order in instantiations.
(Add_Interface_Tag_Components, Inherit_Components): Update occurrences
of Related_Interface to Related_Type.
(Record_Type_Declaration): Minor reordering of calls to decorate the
Tag component because the entity must have set its Ekind attribute
before setting its Is_Tag attribute.
(Analyze_Subtype_Declaration): In the case of subtypes with
Private_Kind, inherit Known_To_Have_Preelab_Init from the parent.

From-SVN: r130883

16 years agoi-vxwork.ads: Kill new warning on Convention C, since changing the spec would break...
Arnaud Charlet [Thu, 13 Dec 2007 10:46:43 +0000 (11:46 +0100)]
i-vxwork.ads: Kill new warning on Convention C, since changing the spec would break code.

* i-vxwork.ads: Kill new warning on Convention C, since changing the
spec would break code.

From-SVN: r130882

16 years agos-parame-vxworks.adb: Update comments to reflect usage of this package by Nucleus.
Geert Bosch [Thu, 13 Dec 2007 10:46:20 +0000 (11:46 +0100)]
s-parame-vxworks.adb: Update comments to reflect usage of this package by Nucleus.

2007-12-06  Geert Bosch  <bosch@adacore.com>

* s-parame-vxworks.adb:
Update comments to reflect usage of this package by Nucleus.

From-SVN: r130881

16 years agosymbols-processing-vms-ia64.adb (Process.Skip_Half): New procedure
Vincent Celier [Thu, 13 Dec 2007 10:46:10 +0000 (11:46 +0100)]
symbols-processing-vms-ia64.adb (Process.Skip_Half): New procedure

2007-12-06  Vincent Celier  <celier@adacore.com>

* symbols-processing-vms-ia64.adb (Process.Skip_Half): New procedure
(Process.H): Remove variable. Replace Read_Half (H) with Skip_Half.

From-SVN: r130880

16 years agomake.adb (Scan_Make_Arg): Add test for -aamp_target switch...
Gary Dismukes [Thu, 13 Dec 2007 10:45:44 +0000 (11:45 +0100)]
make.adb (Scan_Make_Arg): Add test for -aamp_target switch...

2007-12-06  Gary Dismukes  <dismukes@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>

* make.adb (Scan_Make_Arg): Add test for -aamp_target switch, passing
it to the front end and setting the aamp_target environment variable
to the switch's argument to ensure that gnaampbind and gnaamplink will
take the specified library into account.
(Make): Only set Check_Object_Consistency to False for JVM, not for CIL
target, since the CIL compiler supports an "object" file (.il files).

From-SVN: r130879

16 years agoitypes.ads, itypes.adb (Create_Itype): For access-to-subprogram types...
Bob Duff [Thu, 13 Dec 2007 10:45:14 +0000 (11:45 +0100)]
itypes.ads, itypes.adb (Create_Itype): For access-to-subprogram types...

2007-12-06  Bob Duff  <duff@adacore.com>

* itypes.ads, itypes.adb (Create_Itype): For access-to-subprogram
types, set Can_Use_Internal_Rep appropriately, based on
Always_Compatible_Rep_On_Target.

From-SVN: r130878

16 years agoimpunit.adb: Add entries for missing units
Robert Dewar [Thu, 13 Dec 2007 10:44:45 +0000 (11:44 +0100)]
impunit.adb: Add entries for missing units

2007-12-06  Robert Dewar  <dewar@adacore.com>

* impunit.adb: Add entries for missing units

* Makefile.rtl: Add new run-time units.

* Make-lang.in:  Update dependencies.

From-SVN: r130877

16 years agog-socthi-vms.ads (Fd_Set_Access): make it 32-bit.
Vasiliy Fofanov [Thu, 13 Dec 2007 10:44:32 +0000 (11:44 +0100)]
g-socthi-vms.ads (Fd_Set_Access): make it 32-bit.

2007-12-06  Vasiliy Fofanov  <fofanov@adacore.com>
    Tristan Gingold  <gingold@adacore.com>

* g-socthi-vms.ads (Fd_Set_Access): make it 32-bit.

* s-osprim-vms.adb,
a-calend-vms.adb: Remove pragma warning off and add pragma
unreferenced.

From-SVN: r130876

16 years agos-os_lib.ads, [...] (Normalize_Pathname): Do not compute Reference_Dir unless we...
Emmanuel Briot [Thu, 13 Dec 2007 10:43:51 +0000 (11:43 +0100)]
s-os_lib.ads, [...] (Normalize_Pathname): Do not compute Reference_Dir unless we actually need it.

2007-12-06  Emmanuel Briot  <briot@adacore.com>

* s-os_lib.ads, s-os_lib.adb (Normalize_Pathname): Do not compute
Reference_Dir unless we actually need it.

From-SVN: r130875

16 years agotb-gcc.c (uw_data_t, [...]): Only define if not GCC-SJLJ eh.
Olivier Hainque [Thu, 13 Dec 2007 10:43:33 +0000 (11:43 +0100)]
tb-gcc.c (uw_data_t, [...]): Only define if not GCC-SJLJ eh.

2007-12-06  Olivier Hainque  <hainque@adacore.com>

* tb-gcc.c (uw_data_t, trace_callback): Only define if not GCC-SJLJ eh.
(__gnat_backtrace): Early return 0 if using GCC-SJLJ eh.

From-SVN: r130874

16 years agoa-cohase.ads, [...]: Document which generic formal operations are called for each...
Matthew Heaney [Thu, 13 Dec 2007 10:42:54 +0000 (11:42 +0100)]
a-cohase.ads, [...]: Document which generic formal operations are called for each operation.

2007-12-06  Matthew Heaney  <heaney@adacore.com>

* a-cohase.ads, a-cihama.ads, a-cihase.ads, a-cohama.ads: Document
which generic formal operations are called for each operation.

From-SVN: r130873

16 years agognat_ugn.texi: Dcoument new rules for style check comment alignment Document that...
Robert Dewar [Thu, 13 Dec 2007 10:42:14 +0000 (11:42 +0100)]
gnat_ugn.texi: Dcoument new rules for style check comment alignment Document that suffixes may...

2007-12-06  Robert Dewar  <dewar@adacore.com>
    Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Dcoument new rules for style check comment alignment
Document that suffixes may be terminations of each others
Add doc for -gnatw.a and -gnatw.A
Document gnatbind -Wx switch
Document BOM recognition
Document pragma Implemented_By_Entry.
Document new units.

* gnat_rm.texi: (Favor_Top_Level): Document new pragma.
Add doc for pragma Unreferenced suppressing no entities referenced msg
Add documentation of GNAT.Directory_Operations.Iteration
Add documentation of GNAT.Random_Numbers
Add documentation for pragma Shared.
Correct documentation for Bit_Order
Add documentation for the Pool_Address attribute.
Fix and improve documentation of pragma machine_attribute.
New pragma Fast_Math
Document BOM recognition

* vms_data.ads: Add entries for -gnatw.a -gnatw.A
Add /Wide_Character_Encoding for binder
Add qualifier for the new gnatpp option --no-separate-loop-then

From-SVN: r130872

16 years agoa-direct.adb (Create_Path): Always take '/' as a directory separator, even on Windows
Vincent Celier [Thu, 13 Dec 2007 10:41:38 +0000 (11:41 +0100)]
a-direct.adb (Create_Path): Always take '/' as a directory separator, even on Windows

2007-12-06  Vincent Celier  <celier@adacore.com>

* a-direct.adb (Create_Path): Always take '/' as a directory separator,
even on Windows

From-SVN: r130871

16 years agoxeinfo.adb: Remove warnings
Robert Dewar [Thu, 13 Dec 2007 10:40:58 +0000 (11:40 +0100)]
xeinfo.adb: Remove warnings

2007-12-06  Robert Dewar  <dewar@adacore.com>

* xeinfo.adb: Remove warnings
* xnmake.adb: Remove warnings
* xsinfo.adb: Remove warnings
* xtreeprs.adb: Remove warnings
* xsnames.adb: Remove warnings

* a-ngcoar.adb: Fix typo.
* s-interr.adb: Minor reformatting
* env.c: Minor reformatting.
* g-bytswa.adb: Minor reformatting.
* g-rannum.ads: Minor documentation improvements
* s-tasinf-mingw.adb: Minor header fix
* a-clrefi.adb: Minor reformatting
* g-sttsne.ads: Minor documentation improvement
* g-sttsne-locking.ads: Minor documentation improvement
* g-soliop-solaris.ads: Minor documentation improvement
* g-soliop-mingw.ads: Minor documentation improvement
* g-soliop.ads: Minor documentation improvement
* exp_aggr.ads: Minor reformatting
* debug.adb: Add documentation for the gprbuild debug flags
* exp_ch2.adb: Use Nkind_In to simplify code throughout
* exp_pakd.adb: Minor reformatting

* g-altive.ads, g-alleve.adb: Remove assertions.
Add comment about minor differences between targets regarding
floating-point operations.

* g-thread.adb: Remove pragma unreferenced.
* lib.ads: Minor reformatting
* par-ch9.adb: Minor reformatting of error messages
* sem_case.adb: Minor reformatting
* s-fileio.adb: Minor reformattinng
* s-vmexta.ads: Minor typo
* vxaddr2line.adb:
Take into account 'Success' value as per new GNAT warning.

From-SVN: r130870

16 years agotreepr.ads, treepr.adb: (pl): implement use of positive value shorthands
Robert Dewar [Thu, 13 Dec 2007 10:37:34 +0000 (11:37 +0100)]
treepr.ads, treepr.adb: (pl): implement use of positive value shorthands

2007-12-06  Robert Dewar  <dewar@adacore.com>

* treepr.ads, treepr.adb: (pl): implement use of positive value
shorthands

From-SVN: r130869

16 years agotbuild.ads, tbuild.adb: Fix location of flag for unrecognized pragma message
Robert Dewar [Thu, 13 Dec 2007 10:37:00 +0000 (11:37 +0100)]
tbuild.ads, tbuild.adb: Fix location of flag for unrecognized pragma message

2007-12-06  Robert Dewar  <dewar@adacore.com>

* tbuild.ads, tbuild.adb:
Fix location of flag for unrecognized pragma message

From-SVN: r130868

16 years agotb-alvms.c (struct tb_entry_t, [...]): Revert back to use of Procedure Value instead...
Olivier Hainque [Thu, 13 Dec 2007 10:36:42 +0000 (11:36 +0100)]
tb-alvms.c (struct tb_entry_t, [...]): Revert back to use of Procedure Value instead of Frame Pointer as the...

2007-12-06  Olivier Hainque  <hainque@adacore.com>

* tb-alvms.c (struct tb_entry_t, __gnat_backtrace): Revert back to use
of Procedure Value instead of Frame Pointer as the invocation
identifier associated with the instruction pointer in each traceback
entry.

* g-trasym-vms-alpha.adb (Traceback_Entry, PV_For, FP_For,
TB_Entry_For): Revert back to use of Procedure Value instead of Frame
Pointer as the invocation identifier passed to tbk$symbolize.

* s-traent-vms.ads, s-traent-vms.adb
(Traceback_Entry, PV_For, FP_For, TB_Entry_For): Revert back to use of
Procedure Value instead of Frame Pointer as the invocation identifier
passed to tbk$symbolize.

From-SVN: r130867

16 years agostyleg.adb (Check_Comment): More liberal rules for comment placement
Robert Dewar [Thu, 13 Dec 2007 10:36:06 +0000 (11:36 +0100)]
styleg.adb (Check_Comment): More liberal rules for comment placement

2007-12-06  Robert Dewar  <dewar@adacore.com>

* styleg.adb (Check_Comment): More liberal rules for comment placement

From-SVN: r130866

16 years agos-tassta.adb (Create_Task): Take into account tasks created by foreign threads.
Arnaud Charlet [Thu, 13 Dec 2007 10:35:41 +0000 (11:35 +0100)]
s-tassta.adb (Create_Task): Take into account tasks created by foreign threads.

* s-tassta.adb (Create_Task): Take into account tasks created by
foreign threads.
Code clean up: use constants instead of hard coded values.

From-SVN: r130865

16 years agos-stoele.adb ("mod"): mod negative value raises Constraint_Error
Robert Dewar [Thu, 13 Dec 2007 10:35:02 +0000 (11:35 +0100)]
s-stoele.adb ("mod"): mod negative value raises Constraint_Error

2007-12-06  Robert Dewar  <dewar@adacore.com>

* s-stoele.adb ("mod"): mod negative value raises Constraint_Error

From-SVN: r130864

16 years agos-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant with Stack_Grows_Do...
Olivier Hainque [Thu, 13 Dec 2007 10:34:35 +0000 (11:34 +0100)]
s-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant with Stack_Grows_Down in System.Parameters.

2007-12-06  Olivier Hainque  <hainque@adacore.com>

* s-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant
with Stack_Grows_Down in System.Parameters. Rename Array_Address into
Stack_Overlay_Address and document that we are using an internal
abstraction.
(Byte_Size, Unsigned_32_Size): Remove, now useless.
(Pattern_Type, Bytes_Per_Pattern): New subtype and constant, to be used
consistently throughout the various implementation pieces.

* s-stausa.adb (Stack_Slots): New type, abstraction for the stack
overlay we are using to fill the stack area with patterns.
(Top_Slot_Index_In, Bottom_Slot_Index_In): Operations on Stack_Slots.
(Push_Index_Step_For, Pop_Index_Step_For): Likewise.
(Fill_Stack, Compute_Result): Use the Stack_Slots abstraction.

From-SVN: r130863

16 years agos-soflin.ads: Apply new pragma Favor_Top_Level to all access-to-subprogram types...
Bob Duff [Thu, 13 Dec 2007 10:34:11 +0000 (11:34 +0100)]
s-soflin.ads: Apply new pragma Favor_Top_Level to all access-to-subprogram types in this package.

2007-12-06  Bob Duff  <duff@adacore.com>

* s-soflin.ads: Apply new pragma Favor_Top_Level to all
access-to-subprogram types in this package.

From-SVN: r130862

16 years agosinput-l.adb (Load_File): Disable style checks when preprocessing.
Thomas Quinot [Thu, 13 Dec 2007 10:33:25 +0000 (11:33 +0100)]
sinput-l.adb (Load_File): Disable style checks when preprocessing.

2007-12-06  Thomas Quinot  <quinot@adacore.com>

* sinput-l.adb (Load_File): Disable style checks when preprocessing.

From-SVN: r130861

16 years agosinput.adb (Get_Source_File_Index): Add assertion to guard against an invalid access...
Thomas Quinot [Thu, 13 Dec 2007 10:32:56 +0000 (11:32 +0100)]
sinput.adb (Get_Source_File_Index): Add assertion to guard against an invalid access to an uninitialized slot in...

2007-12-06  Thomas Quinot  <quinot@adacore.com>

* sinput.adb (Get_Source_File_Index): Add assertion to guard against
an invalid access to an uninitialized slot in the
Source_File_Index_Table.

From-SVN: r130860

16 years agosem_util.ads, [...] (Is_Concurrent_Interface): New routine.
Bob Duff [Thu, 13 Dec 2007 10:32:45 +0000 (11:32 +0100)]
sem_util.ads, [...] (Is_Concurrent_Interface): New routine.

2007-12-06  Bob Duff  <duff@adacore.com>
    Javier Miranda  <miranda@adacore.com>
    Robert Dewar  <dewar@adacore.com>

* sem_util.ads, sem_util.adb (Is_Concurrent_Interface): New routine.
(Set_Convention): New procedure to set the Convention flag, and in
addition make sure the Favor_Top_Level flag is kept in sync (all
foreign-language conventions require Favor_Top_Level = True).
(Collect_Abstract_Interfaces): Update occurrences of Related_Interface
to Related_Type.
(Collect_Interfaces_Info): Minor update to handle the two secondary
dispatch tables. Update occurrence of Related_Interface to Related_Type.
(Generate_Parent_Ref): Add parameter to specify entity to check
(Is_Preelaborable_Expression): Allow the name of a discriminant to
initialize a component of a type with preelaborable initialization.
This includes the case of a discriminal used in such a context.
(Is_Dependent_Component_Of_Mutable_Object): Take into account the
latest Ada 2005 rules about renaming and 'Access of
discriminant-dependent components.
(Check_Nested_Access): Add handling when there are no enclosing
subprograms (e.g. case of a package body).
(Find_Parameter_Type): Factor routine from several other compiler files.
Remove routine from Find_Overridden_Synchronized_Primitive.

From-SVN: r130859

16 years agosem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check whether formal...
Hristian Kirtchev [Thu, 13 Dec 2007 10:32:34 +0000 (11:32 +0100)]
sem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check whether formal E is an entity which may have parameters.

2007-12-06  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check
whether formal E is an entity which may have parameters.

From-SVN: r130858

16 years agosem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static context, so...
Geert Bosch [Thu, 13 Dec 2007 10:32:23 +0000 (11:32 +0100)]
sem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static context, so do not call Check_Non_Static_Context.

2007-12-06  Geert Bosch  <bosch@adacore.com>

* sem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static
context, so do not call Check_Non_Static_Context.

From-SVN: r130857

16 years agosem_disp.adb (Check_Dispatching_Call): If an actual in a call to an inherited operati...
Ed Schonberg [Thu, 13 Dec 2007 10:32:11 +0000 (11:32 +0100)]
sem_disp.adb (Check_Dispatching_Call): If an actual in a call to an inherited operation is a defaulted...

2007-12-06  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Check_Dispatching_Call): If an actual in a call to an
inherited operation is a defaulted tag-indeterminate call, and there is
a statically tagged actual, use the static tag as a controlling actual
for the defaulted actual.

From-SVN: r130856

16 years agosem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a requeue statemen...
Hristian Kirtchev [Thu, 13 Dec 2007 10:32:01 +0000 (11:32 +0100)]
sem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a requeue statement is dispatching.

2007-12-06  Hristian Kirtchev  <kirtchev@adacore.com>
    Gary Dismukes  <dismukes@adacore.com>

* sem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a
requeue statement is dispatching. Do not emit an error when the name is
not an entry and the context is a dispatching select. Add code to
perform subtype conformance between the formals of the current entry
and those of the target interface primitive.
(Analyze_Asynchronous_Select, Analyze_Conditional_Entry_Call, Analyze_
Timed_Entry_Call): Analyze the triggering statement as the first step of
the processing. If this is a dispatching select, postpone the analysis
of all select statements until the Expander transforms the select. This
approach avoids generating duplicate identifiers after the Expander has
replicated some of the select statements. In case the Expander is
disabled, perform regular analysis.
(Check_Triggering_Statement): New routine.
(Analyze_Requeue): Exclude any interpretations that are not entries when
checking overloaded names in a requeue. Also test type conformance for
matching interpretations rather than requiring subtype conformance at
that point to conform with the RM's resolution rule for requeues.

From-SVN: r130855