OSDN Git Service

pf3gnuchains/gcc-fork.git
15 years ago2006-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Mon, 6 Nov 2006 23:25:19 +0000 (23:25 +0000)]
2006-11-06  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR tree-opt/29439
        * tree-vrp.c (vrp_int_const_binop): Use the correct tree when
        checking for overflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118530 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agofortran/
eedelman [Mon, 6 Nov 2006 22:18:54 +0000 (22:18 +0000)]
fortran/
2006-11-06  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/29630
        PR fortran/29679
        * expr.c (find_array_section): Support vector subscripts.  Don't
        add sizes for dimen_type == DIMEN_ELEMENT to the shape array.

testsuite/
2006-11-06  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/29630
        PR fortran/29679
        * gfortran.dg/initialization_2.f90: Test PRs 29630 and 29679 too.
        * gfortran.dg/initialization_3.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118528 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-06 Frank Ch. Eigler <fche@redhat.com>
fche [Mon, 6 Nov 2006 20:04:14 +0000 (20:04 +0000)]
2006-11-06  Frank Ch. Eigler  <fche@redhat.com>

From Herman ten Brugge <hermantenbrugge@home.nl>:
* mf-runtime.c (__mf_uncache_object): Optimize the code so that
small and large objects are handled a lot faster.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118526 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-06 Jan van Dijk <jan@etpmod.phys.tue.nl>
dannysmith [Mon, 6 Nov 2006 19:49:31 +0000 (19:49 +0000)]
2006-11-06  Jan van Dijk  <jan@etpmod.phys.tue.nl>

* configure.ac: Fix typo in case statement: :: changed to ;;
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118525 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * longlong.h (__xtensa__): Add definitions for umul_ppmm, __umulsidi3,
bwilson [Mon, 6 Nov 2006 18:50:37 +0000 (18:50 +0000)]
* longlong.h (__xtensa__): Add definitions for umul_ppmm, __umulsidi3,
count_leading_zeros, and count_trailing_zeros.
* config/xtensa/xtensa.c (TARGET_INIT_BUILTINS): Define.
(TARGET_FOLD_BUILTIN): Define.
(TARGET_EXPAND_BUILTIN): Define.
(xtensa_init_builtins): New.
(xtensa_fold_builtin): New.
(xtensa_expand_builtin): New.
(xtensa_rtx_costs): Add CTZ and CLZ.  Adjust costs for MULT.
* config/xtensa/xtensa.h (TARGET_MUL32_HIGH): Define.
(CLZ_DEFINED_VALUE_AT_ZERO): Define.
(CTZ_DEFINED_VALUE_AT_ZERO): Define.
* config/xtensa/xtensa.md (UNSPEC_NSAU): Remove.
(any_extend): New code macro.
(u, su): New code attributes.
(<u>mulsidi3, <u>mulsi3_highpart, clzsi2, ctzsi2): New.
(nsau): Remove; replaced by clzsi2.
(ffssi2): Use clzsi2.
* config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _umulsidi3,
_clzsi2, _ctzsi2, and _ffssi2.  Rename _nsau to _clz.
* config/xtensa/lib1funcs.asm (__mulsi3): Support Mul32 option.
(__umulsidi3, __clzsi2, __ctzsi2, __ffssi2): New.
(__nsau_data): Guard with ifdef L_clz instead of L_nsau.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118524 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-06 Frank Ch. Eigler <fche@redhat.com>
fche [Mon, 6 Nov 2006 18:02:13 +0000 (18:02 +0000)]
2006-11-06  Frank Ch. Eigler  <fche@redhat.com>

* configure.ac (__libc_freeres): Look for it.
* mf-impl.h (call_libc_freeres): New configuration flag.
* mf-runtime.c (__mf_set_default_options): Set it by default.
(__mfu_report): Call it if needed.
(__mfu_unregister): Remove "unaccessed registered object" warning.
* configure, config.h.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118523 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no
vprus [Mon, 6 Nov 2006 09:49:07 +0000 (09:49 +0000)]
    * config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no
        set inhibit_libc.
        * config/arm/t-strongarm-elf: Likewise.
        * config/arm/t-pe: Likewise.
        * config/arm/t-arm-elf: Likewise.
        * config/arm/t-xscale-elf: Likewise.
        * config/arm/t-arm-coff: Likewise.
        * config/arm/t-xscale-coff: Likewise.
        * config/arm/t-wince-pe: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118518 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Mon, 6 Nov 2006 00:17:47 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118515 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 5 Nov 2006 17:54:17 +0000 (17:54 +0000)]
2006-11-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* io/transfer.c (next_record_w): Fix indentation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118508 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 5 Nov 2006 17:40:42 +0000 (17:40 +0000)]
2006-11-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25545
* gfortran.dg/dollar_edit_descriptor-2.f: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118507 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 5 Nov 2006 17:35:30 +0000 (17:35 +0000)]
2006-11-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25545
* io/transfer.c (write_block): Cleanup code paths between
stream and non-stream I/O.
(write_buf):  Cleanup.
(read_block): Cleanup.
(finalize_transfer): Call next_record for '$' edit descriptor handling
of internal unit. Cleanup code for readability.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118506 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-05 Paolo Carlini <pcarlini@suse.de>
paolo [Sun, 5 Nov 2006 16:17:03 +0000 (16:17 +0000)]
2006-11-05  Paolo Carlini  <pcarlini@suse.de>

* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 45.
* docs/html/ext/lwg-closed.html: Add.
* docs/html/ext/howto.html: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118502 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-05 Bernhard Fischer <aldot@gcc.gnu.org>
aldot [Sun, 5 Nov 2006 14:57:24 +0000 (14:57 +0000)]
2006-11-05  Bernhard Fischer  <aldot@gcc.gnu.org>

        PR fortran/21061
        * error.c (gfc_warning): If warnings_are_errors then treat
        warnings as errors with respect to the exit code.
        (gfc_notify_std): Ditto.
        (gfc_warning_now): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118501 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/sh/lib1funcs-4-300.asm: Guard entire file with
kkojima [Sun, 5 Nov 2006 12:58:28 +0000 (12:58 +0000)]
* config/sh/lib1funcs-4-300.asm: Guard entire file with
        #if !__SHMEDIA__ .

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118500 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR middle-end/29695
jakub [Sun, 5 Nov 2006 12:13:46 +0000 (12:13 +0000)]
PR middle-end/29695
* fold-const.c (fold_ternary): Fix A < 0 ? <sign bit of A> : 0
simplification.

* gcc.c-torture/execute/pr29695-1.c: New test.
* gcc.c-torture/execute/pr29695-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118497 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads
charlet [Sun, 5 Nov 2006 10:58:41 +0000 (10:58 +0000)]
* s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads
(To_Target_Priority): New function.
Fix PR ada/29707

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118496 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix typos.
ebotcazou [Sun, 5 Nov 2006 10:19:18 +0000 (10:19 +0000)]
Fix typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118494 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu,org>
pault [Sun, 5 Nov 2006 06:27:48 +0000 (06:27 +0000)]
2006-11-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu,org>
    Paul Thomas  <pault@gcc.gnu.org>

PR fortran/24518
* trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod
for both MOD and MODULO, if it is available.

PR fortran/29565
* trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save
the declarations from the unused loops by merging the block
scope for each; this ensures that the temporary is declared.

2006-11-05  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29565
* gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118492 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* fortran/error.c (show_locus): Add trailing colon in error messages.
brooks [Sun, 5 Nov 2006 00:28:08 +0000 (00:28 +0000)]
* fortran/error.c (show_locus): Add trailing colon in error messages.
(error_print): Avoid leading space in error lines.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Adjust pattern
for matching error messages.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118491 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Sun, 5 Nov 2006 00:17:22 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118489 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR target/26915
uros [Sat, 4 Nov 2006 23:12:16 +0000 (23:12 +0000)]
    PR target/26915
        * config/i386/i386.c (standard_80387_constant_p): Treat -0.0 and -1.0
        as a valid 80387 constant.
        (standard_80387_constant_opcode): Return "#" for -0.0 and -1.0.
        * config/i386/i386.md (unnamed splitter): Split the load of
        constant -0.0 or -1.0  into the load of 0.0 or 1.0, followed
        by negation.

testsuite/ChangeLog:

        PR target/26915
        * gcc.target/i386/387-12.c: New test.
~

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118484 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR fortran/29713
fxcoudert [Sat, 4 Nov 2006 20:58:26 +0000 (20:58 +0000)]
PR fortran/29713

* expr.c (gfc_simplify_expr): Correct memory allocation.

* gfortran.dg/pr29713.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118483 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * arm.c (thumb_legitimate_addres_p): Allow any constant offset
rearnsha [Sat, 4 Nov 2006 14:26:34 +0000 (14:26 +0000)]
* arm.c (thumb_legitimate_addres_p): Allow any constant offset
from the soft-frame, argument and virtual registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118481 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/i386/i386.md (*movxf_nointeger, *movxf_integer): Enable
uros [Sat, 4 Nov 2006 12:07:29 +0000 (12:07 +0000)]
    * config/i386/i386.md (*movxf_nointeger, *movxf_integer): Enable
        patterns for standard 80387 constants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118479 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoChangeLog fix
steven [Sat, 4 Nov 2006 11:13:57 +0000 (11:13 +0000)]
ChangeLog fix

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118478 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-03 Paolo Bonzini <bonzini@gnu.org>
bonzini [Sat, 4 Nov 2006 08:36:45 +0000 (08:36 +0000)]
2006-11-03  Paolo Bonzini  <bonzini@gnu.org>
            Steven Bosscher  <stevenb.gcc@gmail.com>

        * fwprop.c: New file.
        * Makefile.in: Add fwprop.o.
        * tree-pass.h (pass_rtl_fwprop, pass_rtl_fwprop_with_addr): New.
        * passes.c (init_optimization_passes): Schedule forward propagation.
        * rtlanal.c (loc_mentioned_in_p): Support NULL value of the second
        parameter.
        * timevar.def (TV_FWPROP): New.
        * common.opt (-fforward-propagate): New.
        * opts.c (decode_options): Enable forward propagation at -O2.
        * gcse.c (one_cprop_pass): Do not run local cprop unless touching jumps.
        * cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1, find_best_addr,
        canon_for_address, table_size): Remove.
        (new_basic_block, insert, remove_from_table): Remove references to
        table_size.
        (fold_rtx): Process SUBREGs and MEMs with equiv_constant, make
        simplification loop more straightforward by not calling fold_rtx
        recursively.
        (equiv_constant): Move here a small part of fold_rtx_subreg,
        do not call fold_rtx.  Call avoid_constant_pool_reference
        to process MEMs.
        * recog.c (canonicalize_change_group): New.
        * recog.h (canonicalize_change_group): New.

        * doc/invoke.texi (Optimization Options): Document fwprop.
        * doc/passes.texi (RTL passes): Document fwprop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118475 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1.
geoffk [Sat, 4 Nov 2006 02:59:52 +0000 (02:59 +0000)]
* c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1.
(merge_decls): Implement WANT_C99_INLINE_SEMANTICS.
(grokdeclarator): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118474 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * call.c (build_op_delete_call): Test user-visible type against
sayle [Sat, 4 Nov 2006 00:51:51 +0000 (00:51 +0000)]
* call.c (build_op_delete_call): Test user-visible type against
size_type_node, instead of against the internal type, sizetype.
* class.c (type_requires_array_cookie): Likewise.
* mangle.c (write_builtin_type) <INTEGER_TYPE>: Remove special
handling of TYPE_IS_SIZETYPE.
* typeck.c (type_after_usual_arithmetic_conversions): Remove
special case handling of TYPE_IS_SIZETYPE.
(comptypes): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118472 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Sat, 4 Nov 2006 00:17:39 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118470 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-dump.c (dump_enable_all): Rename local variable
steven [Fri, 3 Nov 2006 22:12:37 +0000 (22:12 +0000)]
* tree-dump.c (dump_enable_all): Rename local variable
ir_type to avoid name conflicts.
* cfgloopmanip.c (lv_adjust_loop_entry_edge): Check for IR_GIMPLE
instead of using ir_type().
* profile.c (tree_register_profile_hooks): Likewise.
* value-prof.c (tree_register_value_prof_hooks): Likewise.
* basic-block.h (struct edge_def): Likewise.
* config/arm/arm.c (legitimize_pic_address): Likewise.
* coretypes.h (ir_type): New enum of all intermediate languages
used in GCC.
* cfghooks.c (ir_type): Rename to...
(current_ir_type): ...this.  Distinguish between cfgrtl and
cfglayout mode when the current IR is RTL.  Return enum ir_type.
* cfghooks.h (ir_type): Replace with current_ir_type prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118465 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-03 Paul Brook <paul@codesourcery.com>
pbrook [Fri, 3 Nov 2006 17:49:43 +0000 (17:49 +0000)]
2006-11-03  Paul Brook  <paul@codesourcery.com>

gcc/
* config/arm/arm.c (arm_file_start): New function.
(TARGET_ASM_FILE_START): Define.
(arm_default_cpu): New variable.
(arm_override_options): Set arm_default_cpu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118461 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agotypo
davidu [Fri, 3 Nov 2006 17:39:44 +0000 (17:39 +0000)]
typo

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118460 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* config/mips/mips.h (processor_type): Removed PROCESSOR_24K, add
davidu [Fri, 3 Nov 2006 17:32:39 +0000 (17:32 +0000)]
* config/mips/mips.h (processor_type): Removed PROCESSOR_24K, add
PROCESSOR_24KC and PROCESSOR_24KF.
* config/mips/mips.c (mips_cpu_info_table): Add processor names
and aliases for 4kec/4kem/4kep/24kec/24kef/24kex/34kc/34kf/34kx.
(mips_rtx_cost_data): Add costs for the 24kc.
* config/mips/mips.md ("cpu"): Remove 24k, add 24kc and 24kf.
* config/mips/24k.md: Remove references to 24k and replace with
uses of 24kc/24kf in the appropriate reservations.
* doc/invoke.texi (MIPS Options): Updated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118459 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc:
amylaar [Fri, 3 Nov 2006 14:52:19 +0000 (14:52 +0000)]
gcc:

2006-11-03  J"orn Rennecke  <joern.rennecke@st.com>

* config/sh/crt1.asm: Fix #ifdef indent.

2006-11-03  J"orn Rennecke  <joern.rennecke@st.com>
Merged from STMicroelectronics sources:
2006-10-06  Andrew Stubbs  <andrew.stubbs@st.com>
  * config/sh/crt1.asm (vbr_600): Add missing #if.
2006-08-03  J"orn Rennecke  <joern.rennecke@st.com>
  * sh.opt (mfused-madd): New option.
  * sh.md (mac_media, macsf3): Make conditional on TARGET_FMAC.
2006-07-04  Andrew Stubbs  <andrew.stubbs@st.com>
  * config/sh/crt1.asm (vbr_start): Move to new section .test.vbr.
  Remove pointless handler at VBR+0.
  (vbr_200, vbr_300, vbr_500): Remove pointless handler.
  (vbr_600): Save and restore mach and macl, fpul and fpscr and fr0 to
  fr7. Make sure the timer handler is called with the correct FPU
  precision setting, according to the ABI.
2006-06-14  J"orn Rennecke <joern.rennecke@st.com>
  * config/sh/sh.opt (m2a-single, m2a-single-only): Fix Condition.
  * config/sh/sh.h (SUPPORT_SH2A_NOFPU): Fix condition.
  (SUPPORT_SH2A_SINGLE_ONLY, SUPPORT_SH2A_SINGLE_ONLY): Likewise.
2006-06-09  J"orn Rennecke <joern.rennecke@st.com>
  * sh.md (cmpgeusi_t): Change into define_insn_and_split.  Accept
  zero as second operand.
2006-04-28  J"orn Rennecke <joern.rennecke@st.com>
  * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm:
  Fixed some bugs related to negative values, in particular -0
  and overflow at -0x80000000.
  * config/sh/divcost-analysis: Added sh4-300 figures.
2006-04-27  J"orn Rennecke <joern.rennecke@st.com>
  * config/sh/t-sh (MULTILIB_MATCHES): Add -m4-300* / -m4-340 options.
2006-04-26  J"orn Rennecke <joern.rennecke@st.com>
  * config/sh/t-sh (OPT_EXTRA_PARTS): Add libgcc-4-300.a.
  ($(T)div_table-4-300.o, $(T)libgcc-4-300.a): New rules.
  * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm:
New files.
  * config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-4-300 for -m4-300* /
  -m4-340.
2006-04-24  J"orn Rennecke <joern.rennecke@st.com>
  SH4-300 scheduling description & fixes to SH4-[12]00 description:
  * sh.md: New instruction types: fstore, movi8, fpscr_toggle, gp_mac,
  mac_mem, mem_mac, dfp_mul, fp_cmp.
  (insn_class, dfp_comp, any_fp_comp): Update.
  (push_fpul, movsf_ie, fpu_switch, toggle_sz, toggle_pr): Update type.
  (cmpgtsf_t, "cmpeqsf_t, cmpgtsf_t_i4, cmpeqsf_t_i4): Likewise.
  (muldf3_i): Likewise.
  (movsi_i): Split rI08 alternative into two separate alternatives.
  Update type.
  (movsi_ie, movsi_i_lowpart): Likewise.
  (movqi_i): Split ri alternative into two separate alternatives.
  Update type.
  * sh1.md (sh1_load_store, sh1_fp): Update.
  * sh4.md (sh4_store, sh4_mac_gp, fp_arith, fp_double_arith): Update.
  (mac_mem, sh4_fpscr_toggle): New insn_reservations.
  * sh4a.md (sh4a_mov, sh4a_load, sh4a_store, sh4a_fp_arith): Update.
  (sh4a_fp_double_arith): Likewise.
  * sh4-300.md: New file.
  * sh.c (sh_handle_option): Handle m4-300* options.
  (sh_adjust_cost): Fix latency of auto-increments.
  Handle SH4-300 differently than other SH4s.  Check for new insn types.
  * sh.h (OVERRIDE_OPTIONS): Initilize sh_branch_cost if it has not
  been set by an option.
  * sh.opt (m4-300, m4-100-nofpu, m4-200-nofpu): New options.
  (m4-300-nofpu, -m4-340, m4-300-single, m4-300-single-only): Likewise.
  (mbranch-cost=): Likewise.
  * superh.h (STARTFILE_SPEC): Take -m4-340 into account.

  * sh.md (mulsf3): Remove special expansion code.
  (mulsf3_ie): Now a define_insn_and_split.
  (macsf3): Allow for TARGET_SH4.

  * sh.md (cbranchsi4, cbranchdi4, cbranchdi4_i): New patterns.
  * sh.c (prepare_cbranch_operands, expand_cbranchsi4): New functions.
  (expand_cbranchdi4): Likewise.
  (sh_rtx_costs): Give lower cost for certain CONST_INT values and for
  CONST_DOUBLE if the outer code is COMPARE.
  * sh.h (OPTIMIZATION_OPTIONS): If not optimizing for size, set
  TARGET_CBRANCHDI4 and TARGET_EXPAND_CBRANCHDI4.
  (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, clear TARGET_CBRANCHDI4.
  (LEGITIMATE_CONSTANT_P): Also allow DImode and VOIDmode CONST_DOUBLEs.
  Remove redundant fp_{zero,one}_operand checks.
  * sh.opt (mcbranchdi, mexpand-cbranchdi, mcmpeqdi): New options.
  * sh-protos.h (prepare_cbranch_operands, expand_cbranchsi4): Declare.
  (expand_cbranchdi4): Likewise.
2006-04-20  J"orn Rennecke <joern.rennecke@st.com>
  * sh.h (LOCAL_ALIGNMENT): Use DATA_ALIGNMENT.

gcc/testsuite:

2006-11-03  J"orn Rennecke  <joern.rennecke@st.com>

* testsuite/gcc.c-torture/execute/arith-rand-ll.c:
Also test for bogus rest sign.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118458 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR libfortran/27895
fxcoudert [Fri, 3 Nov 2006 11:51:09 +0000 (11:51 +0000)]
PR libfortran/27895

* intrinsics/reshape_generic.c (reshape_internal): Fix so that it
works correctly for zero-sized arrays.
* m4/reshape.m4: Likewise.
* generated/reshape_r16.c: Regenerate.
* generated/reshape_c4.c: Regenerate.
* generated/reshape_i4.c: Regenerate.
* generated/reshape_c16.c: Regenerate.
* generated/reshape_r10.c: Regenerate.
* generated/reshape_r8.c: Regenerate.
* generated/reshape_c10.c: Regenerate.
* generated/reshape_c8.c: Regenerate.
* generated/reshape_i8.c: Regenerate.
* generated/reshape_i16.c: Regenerate.
* generated/reshape_r4.c: Regenerate.

* gcc/testsuite/gfortran.dg/zero_sized_1.f90: Uncomment checks
for RESHAPE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118455 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-03 Gary Benson <gbenson@redhat.com>
gary [Fri, 3 Nov 2006 10:16:30 +0000 (10:16 +0000)]
2006-11-03  Gary Benson  <gbenson@redhat.com>

* java/net/Inet4Address.java
(FAMILY): Renamed to AF_INET.
(<init>, writeReplace): Reflect the above.
* java/net/Inet6Address.java
(FAMILY): Renamed to AF_INET6.
(<init>): Reflect the above.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118452 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-03 Gary Benson <gbenson@redhat.com>
gary [Fri, 3 Nov 2006 10:16:04 +0000 (10:16 +0000)]
2006-11-03  Gary Benson  <gbenson@redhat.com>

* java/net/InetAddress.java: Removed.
* java/net/natInetAddressNoNet.cc: Likewise.
* java/net/natInetAddressPosix.cc: Likewise.
* java/net/natInetAddressWin32.cc: Likewise.
* java/net/VMInetAddress.java (getLocalHostname,
lookupInaddrAny, getHostByAddr, getHostByName,
aton): Replace glue methods with native ones.
* java/net/natVMInetAddressNoNet.cc: New file.
* java/net/natVMInetAddressPosix.cc: Likewise.
* java/net/natVMInetAddressWin32.cc: Likewise.
* Makefile.am, configure.ac: Reflect the above.
* sources.am, Makefile.in, configure: Rebuilt.

* java/net/natVMNetworkInterfaceWin32.cc
(winsock2GetRealNetworkInterfaces): Create InetAddress
objects using InetAddress.getByAddress.
* gnu/java/net/natPlainSocketImplWin32.cc
(accept, getOption): Likewise.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc
(peekData, receive, getOption): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118451 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* fortran/error.c (show_locus): Remove "In file" from error messages.
brooks [Fri, 3 Nov 2006 05:07:59 +0000 (05:07 +0000)]
* fortran/error.c (show_locus): Remove "In file" from error messages.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Remove expected "In file" from error
messages.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118450 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * inclhack.def (glibc_c99_inline_1): New.
geoffk [Fri, 3 Nov 2006 03:11:50 +0000 (03:11 +0000)]
* inclhack.def (glibc_c99_inline_1): New.
* inclhack.def (glibc_c99_inline_2): New.
* inclhack.def (glibc_c99_inline_3): New.
* inclhack.def (glibc_c99_inline_4): New.
* fixincl.x: Regenerate.
* tests/base/bits/string2.h: New.
* tests/base/sys/sysmacros.h: New.
* tests/base/sys/stat.h: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118449 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-02 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Fri, 3 Nov 2006 01:27:39 +0000 (01:27 +0000)]
2006-11-02  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * doc/md.texi (RS6000 constraints): Document H, Z, a, t, and W
        constraints.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118448 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* doc/invoke.texi: Fix mfp-trap-mode typo.
brooks [Fri, 3 Nov 2006 01:06:26 +0000 (01:06 +0000)]
* doc/invoke.texi: Fix mfp-trap-mode typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118447 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-02 Carlos O'Donell <carlos@codesourcery.com>
pbrook [Fri, 3 Nov 2006 00:59:32 +0000 (00:59 +0000)]
2006-11-02  Carlos O'Donell  <carlos@codesourcery.com>

gcc/
* config/arm/linux-elf.h (NEED_INDICATE_EXEC_STACK): Define as 1.
* arm.c (arm_file_end): If NEED_INDICATE_EXEC_STACK call
file_end_indicate_exec_stack.
* arm.h [!NEED_INDICATE_EXEC_STACK] (NEED_INIDCATE_EXEC_STACK):
Define as 0.
* lib1funcs.asm [__ELF__ && __linux__]: Emit .note.GNU-stack section
for a non-executable stack.
* crti.asm: Likewise.
* crtn.asm: Likewise.
* libunwind.S: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118445 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-ssa.c (warn_uninit): Use expand_location variables for
bje [Fri, 3 Nov 2006 00:56:35 +0000 (00:56 +0000)]
* tree-ssa.c (warn_uninit): Use expand_location variables for
locus and declaration locus.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118444 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Fri, 3 Nov 2006 00:17:46 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118442 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR target/27405
kkojima [Thu, 2 Nov 2006 22:57:13 +0000 (22:57 +0000)]
PR target/27405
* config/sh/sh.md (cmp{eq,gt,gtu}{si,di}_media): Remove.
(cmpsi{eq,gt,gtu}{si,di}_media): Rename to
cmp{eq,gt,gtu}{si,di}_media.
(*cmpne0si_media): Remove.
(*movsicc_umin): Adjust gen_cmp*_media call.
(unordered): Change the mode of unordered and operands[1] to
SImode.
(seq): Adjust gen_cmp*_media calls.  Make the mode of
a temporary result of compare SImode if needed.  If the mode
of operands[0] is DImode, extend the temporary result to DImode.
(slt, sle, sgt, sge, sgtu, sltu, sleu, sgue, sne): Likewise.
(sunorderd): Change the mode of match_operand and unorderd to
SImode.
(cmpeq{sf,df}_media): Remove.
(cmpsieq{sf,df}_media): Rename to cmpeq{sf,df}_media.
(cmp{gt,ge,un}{sf,df}_media): Change the mode of match_operand
and compare operation to SImode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118435 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * obj-c++.dg/const-str-9.mm: Don't run on 64-bit.
mrs [Thu, 2 Nov 2006 22:01:36 +0000 (22:01 +0000)]
* obj-c++.dg/const-str-9.mm: Don't run on 64-bit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118433 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * g++.old-deja/g++.abi/align.C: Enable for darwin.
mrs [Thu, 2 Nov 2006 21:06:40 +0000 (21:06 +0000)]
* g++.old-deja/g++.abi/align.C: Enable for darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118431 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * doc/install.texi (sparc-sun-solaris2*): Update GMP/MPFR build
ebotcazou [Thu, 2 Nov 2006 20:43:19 +0000 (20:43 +0000)]
* doc/install.texi (sparc-sun-solaris2*): Update GMP/MPFR build
instructions.
(sparc64-sun-solaris2*): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118426 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-02 Paul Brook <paul@codesourcery.com>
pbrook [Thu, 2 Nov 2006 20:18:42 +0000 (20:18 +0000)]
2006-11-02  Paul Brook  <paul@codesourcery.com>

gcc/
* config/arm/arm.c (arm_elf_asm_constructor): Remove ATTRIBUTE_UNUSED
from priority argument.  Use different section for non-default
priority.
* config/arm/elf.h: Remove definition of SUPPORTS_INIT_PRIORITY.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118425 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-02 Andreas Tobler <a.tobler@schweiz.org>
andreast [Thu, 2 Nov 2006 20:03:40 +0000 (20:03 +0000)]
2006-11-02  Andreas Tobler  <a.tobler@schweiz.org>

* objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and
content where we called cp_finish_file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118424 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR other/29639
ebotcazou [Thu, 2 Nov 2006 18:40:54 +0000 (18:40 +0000)]
PR other/29639
* except.c (switch_to_exception_section): Do not cache the section
if named sections are supported and HAVE_LD_EH_GC_SECTIONS is defined
and flag_function_sections is set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118422 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gnu/classpath/jdwp/natVMMethod.cc (getLineTable): Implement.
kseitz [Thu, 2 Nov 2006 17:01:01 +0000 (17:01 +0000)]
    * gnu/classpath/jdwp/natVMMethod.cc (getLineTable): Implement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118420 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function.
kseitz [Thu, 2 Nov 2006 16:59:04 +0000 (16:59 +0000)]
    * jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function.
        (_Jv_JVMTI_Interface): Define GetLineNumberTable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118419 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR middle-end/29335
ghazi [Thu, 2 Nov 2006 03:20:49 +0000 (03:20 +0000)]
PR middle-end/29335
* builtins.c (do_mpfr_sincos): New.
(fold_builtin_1): Use it to fold builtin sincos.

testsuite:
* gcc.dg/torture/builtin-math-3.c: Fix semicolons.
(TESTIT_2P, TESTIT_2P_R): New macros.  Test sincos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118409 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/darwin.h (CPP_SPEC): Handle -pthread, transforming
sayle [Thu, 2 Nov 2006 02:37:38 +0000 (02:37 +0000)]
* config/darwin.h (CPP_SPEC): Handle -pthread, transforming
it into -D_REENTRANT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118408 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * configure.ac (HAVE_AS_IX86_DIFF_SECT_DELTA): New test to determine
sayle [Thu, 2 Nov 2006 00:56:38 +0000 (00:56 +0000)]
* configure.ac (HAVE_AS_IX86_DIFF_SECT_DELTA): New test to determine
whether the assembler supports taking the difference of symbols in
different sections.  On x86/Solaris, GAS does but Solaris as doesn't.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/sol2-10.h (JUMP_TABLES_IN_TEXT_SECTION): Define if
the assembler doesn't support taking the difference of symbols in
different sections, i.e. we're using the native solaris assembler.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118405 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Thu, 2 Nov 2006 00:17:55 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118403 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * doc/invoke.texi: Add cpu_type power6x
bergner [Wed, 1 Nov 2006 20:47:53 +0000 (20:47 +0000)]
* doc/invoke.texi: Add cpu_type power6x
(RS/6000 and PowerPC Options): Add -mmfpgpr.
* config.gcc: Add cpu_type power6x.
* configure.ac: Add test for mf{t,f}gpr instructions.
(HAVE_AS_MFPGPR): New.
* config.in: Regenerate.
* configure: Regenerate.
* config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6x.
* config/rs6000/rs6000.md (define_attr "type"): Add insert_dword,
shift,trap,var_shift_rotate,cntlz,exts, var_delayed_compare, mffgpr
and mftgpr attributes.
(define_attr "cpu"): Add power6.
Change instruction sequences to use new attributes.
(floatsidf2,fix_truncdfsi2): use TARGET_MFPGPR.
(fix_truncdfsi2_mfpgpr): New.
(floatsidf_ppc64_mfpgpr): New.
(floatsidf_ppc64): Added !TARGET_MFPGPR condition.
(movdf_hardfloat64_mfpgpr,movdi_mfpgpr): New.
(movdf_hardfloat64): Added !TARGET_MFPGPR condition.
(movdi_internal64): Added !TARGET_MFPGPR and related conditions.
(fix_truncdfsi2): Use gpc_reg_operand constraint.
* config/rs6000/{6xx.md,power4.md,8540.md,603.md,mpc.md,
7xx.md,rios2.md,7450.md,440.md,rios1.md,rs64.md,power5.md,40x.md}:
Add descriptions for insert_dword, shift,trap,var_shift_rotate,
cntlz,exts and var_delayed_compare.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
_ARCH_PWR6X, if features enabled.
* config/rs6000/rs6000.opt (mmfpgpr): New.
* config/rs6000/rs6000.c (rs6000_align_branch_targets): New variable.
(cached_can_issue_more): New variable.
(processor_costs): Add power6_cost.
(rs6000_sched_init): New function.
(is_dispatch_slot_restricted): Deleted.
(set_to_load_agen): New function.
(is_load_insn,is_store_insn): New functions.
(adjacent_mem_locations): New function.
(insn_must_be_first_in_group): New function.
(insn_must_be_last_in_group): New function.
(rs6000_sched_reorder): New function.
(rs6000_sched_reorder2): New function.
(TARGET_SCHED_INIT,TARGET_SCHED_REORDER,
TARGET_SCHED_REORDER2): Define.
(processor_target_table): Use PROCESSOR_POWER6 for power6.
Add power6x. Add MASK_MFPGPR for power6x.
(POWERPC_MASKS): Add MASK_MFPGPR.
(rs6000_override_options): Set rs6000_always_hint to false
for power6.  Set rs6000_align_branch_targets. Replace
rs6000_sched_groups check with rs6000_align_branch_targets.
Use PROCESSOR_POWER6.
(last_scheduled_insn): New variable.
(load_store_pendulum): New variable.
(rs6000_variable_issue): Set last_scheduled_insn and
cached_can_issue_more.
(rs6000_adjust_cost): Add power6 cost adjustments.
(rs6000_adjust_priority): Replace is_dispatch_slot_restricted
with insn_must_be_first_in_group. Add power6 priority adjustments.
(rs6000_issue_rate): Add CPU_POWER6.
(insn_terminates_group_p): Use insn_must_be_{first,last}_in_group.
* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER6.
(TARGET_MFPGPR): New.
(SECONDARY_MEMORY_NEEDED): Use TARGET_MFPGPR.
(ASM_CPU_SPEC): Add power6x.
(SECONDARY_MEMORY_NEEDED): Added mode!=DFmode and mode!=DImode
conditions.
* config/rs6000/power6.md: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118396 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gcc.dg/fold-mod-1.c: Match the leading 0x for the
nemet [Wed, 1 Nov 2006 19:22:02 +0000 (19:22 +0000)]
* gcc.dg/fold-mod-1.c: Match the leading 0x for the
hexadecimal value.
* gcc.dg/tree-prof/val-prof-2.c: Likewise.
* gcc.dg/pr14796-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118394 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
nemet [Wed, 1 Nov 2006 19:19:28 +0000 (19:19 +0000)]
* tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
HOST_WIDE_INT_PRINT to print high and low parts.  Use
HOST_BITS_PER_WIDE_INT for the width of HOST_WIDE_INT.  When
printing a hexadecimal number prefix it with 0x.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118393 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-01 Chris Johns <chris@contemporary.net.au>
vprus [Wed, 1 Nov 2006 19:01:36 +0000 (19:01 +0000)]
2006-11-01  Chris Johns <chris@contemporary.net.au>

        PR bootstrap/28400
        * Makefile.in (install-driver): Use exeext when installing
        $target-gcc-$version.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118392 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gnu/gcj/jvmti/Location.java: New file.
kseitz [Wed, 1 Nov 2006 18:20:19 +0000 (18:20 +0000)]
    * gnu/gcj/jvmti/Location.java: New file.
        * gnu/gcj/jvmti/BreakpointManager.java: New file.
        * jvmti.cc (_Jv_JVMTI_SetBreakpoint): New function.
        (_Jv_JVMTI_ClearBreakpoint): New function.
        (_Jv_JVMTI_Interface): Define SetBreakpoint and ClearBreakpoint.
        * sources.am: Regenerated.
        * Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118391 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-01 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Wed, 1 Nov 2006 17:13:27 +0000 (17:13 +0000)]
2006-11-01 Douglas Gregor <doug.gregor@gmail.com>

* c-common.c (flag_cpp0x): New.
* c-common.h (flag_cpp0x): New.
* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
supported, define __GXX_EXPERIMENTAL_CPP0X__.
* c-opts.c (set_std_cxx0x): New.
(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
* c.opt (std=c++0x): Document.
(std=gnu++0x): Ditto.
* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118389 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-01 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Wed, 1 Nov 2006 16:29:06 +0000 (16:29 +0000)]
2006-11-01 Douglas Gregor <doug.gregor@gmail.com>

* c-common.c (flag_cpp0x): New.
* c-common.h (flag_cpp0x): New.
* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
supported, define __GXX_EXPERIMENTAL_CPP0X__.
* c-opts.c (set_std_cxx0x): New.
(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
* c.opt (std=c++0x): Document.
(std=gnu++0x): Ditto.
* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118386 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-01 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Wed, 1 Nov 2006 16:27:23 +0000 (16:27 +0000)]
2006-11-01 Douglas Gregor <doug.gregor@gmail.com>

* include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
for experimental C++0x mode.
* init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
adopted the preprocessor changes introduced in C99.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118385 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tests/base/sys/socket.h: Update.
sje [Wed, 1 Nov 2006 16:25:17 +0000 (16:25 +0000)]
* tests/base/sys/socket.h: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118384 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gcc.c-torture/execute/20061101-1.c: New test.
ebotcazou [Wed, 1 Nov 2006 12:09:25 +0000 (12:09 +0000)]
* gcc.c-torture/execute/20061101-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118377 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix asm string.
ebotcazou [Wed, 1 Nov 2006 11:58:18 +0000 (11:58 +0000)]
Fix asm string.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118374 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-11-01 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 1 Nov 2006 11:38:06 +0000 (11:38 +0000)]
2006-11-01  Richard Guenther  <rguenther@suse.de>

* config/i386/i386.c (ix86_expand_rint): Fix issues with
signed zeros.
(ix86_expand_floorceildf_32): Likewise.
(ix86_expand_floorceil): Likewise.
(ix86_expand_trunc): Likewise.

* testsuite/gcc.target/i386/fpprec-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118373 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Andrew Pinski <pinskia@gmail.com>
pinskia [Wed, 1 Nov 2006 07:28:53 +0000 (07:28 +0000)]
2006-10-31  Andrew Pinski  <pinskia@gmail.com>

        * doc/invoke.texi (-fkeep-inline-functions): Change "GNU C"
        to "GNU C89".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118372 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target
dannysmith [Wed, 1 Nov 2006 06:23:12 +0000 (06:23 +0000)]
* target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target
hook.
* target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define
default.
* config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT):
Override default.
* doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document.
* configure.ac (use_cxa_atexit): As a special case, don't test
for libc definition of __cxa_atexit on mingw32
* configure: Regenerate.
* config.gcc (i[34567]86-pc-mingw32): Default to
enable__cxa_atexit=yes.

cp

* decl.c (get_atexit_node): Reference atexit, not __cxa_exit.
if targetm.cxx.use_atexit_for cxa_atexit.
(start_cleanup_fn): Likewise.
(register_dtor_fn): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118371 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix date on ChangeLog entry
geoffk [Wed, 1 Nov 2006 05:42:01 +0000 (05:42 +0000)]
Fix date on ChangeLog entry

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118367 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE.
ghazi [Wed, 1 Nov 2006 05:38:21 +0000 (05:38 +0000)]
* builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE.

testsuite:
* gcc.dg/torture/builtin-attr-1.c: Don't test gamma/lgamma.
* gcc.dg/torture/builtin-convert-1.c: Don't test lgamma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118366 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoIn gcc/:
geoffk [Wed, 1 Nov 2006 05:28:41 +0000 (05:28 +0000)]
In gcc/:
PR 23067
* c-decl.c (start_struct): Don't create self-containing
structures.
* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
New.
* config/rs6000/rs6000-protos.h
(darwin_rs6000_special_round_type_align): New.
* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite.
(ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align.
In gcc/testsuite/:
PR 23067
* gcc.target/powerpc/darwin-abi-3.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-6.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-7.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-8.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-9.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-10.c: Remove XFAIL.
* gcc.target/powerpc/darwin-abi-11.c: Remove XFAIL.
In libobjc/:
* encoding.c (darwin_rs6000_special_round_type_align): New.
In libffi/:
* src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New.
(ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for
Darwin.
* testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL.
* testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118365 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Eric Christopher <echristo@apple.com>
geoffk [Wed, 1 Nov 2006 05:20:05 +0000 (05:20 +0000)]
2006-10-31  Eric Christopher  <echristo@apple.com>
    Falk Hueffner  <falk@debian.org>

* gcc.dg/builtin-bswap-1.c: New.
* gcc.dg/builtin-bswap-2.c: New.
* gcc.dg/builtin-bswap-3.c: New.
* gcc.dg/builtin-bswap-4.c: New.
* gcc.dg/builtin-bswap-5.c: New.
* gcc.target/i386/builtin-bswap-1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118364 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoAdd missing genopinit.c change for revision 118361.
geoffk [Wed, 1 Nov 2006 05:17:14 +0000 (05:17 +0000)]
Add missing genopinit.c change for revision 118361.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118363 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoIn gcc/:
geoffk [Wed, 1 Nov 2006 05:16:14 +0000 (05:16 +0000)]
In gcc/:
* toplev.c (compile_file): Call final_write_globals
even if there have been errors.
In gcc/cp/:
* decl2.c (cp_write_global_declarations): Rename from
cp_finish_file.
* cp-lang.c (finish_file): Don't call cp_finish_file.
* cp-tree.h (cp_write_global_declarations): Rename from
cp_finish_file.
* cp-objcp-common.h (LANG_HOOKS_WRITE_GLOBALS): Define to
cp_write_global_declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118362 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-09-07 Eric Christopher <echristo@apple.com>
geoffk [Wed, 1 Nov 2006 05:14:40 +0000 (05:14 +0000)]
2006-09-07  Eric Christopher  <echristo@apple.com>
    Falk Hueffner  <falk@debian.org>

* doc/extend.texi (__builtin_bswap32): Document.
(__builtin_bswap64): Ditto.
* doc/libgcc.texi (bswapsi2): Document.
(bswapdi2): Ditto.
* doc/rtl.texi (bswap): Document.
* optabs.c (expand_unop): Don't widen a bswap.
(init_optabs): Init bswap. Set libfuncs explicitly
for bswapsi2 and bswapdi2.
* optabs.h (OTI_bswap): New.
(bswap_optab): Ditto.
* genopinit.c (optabs): Handle bswap_optab.
* tree.h (tree_index): Add TI_UINT32_TYPE and
TI_UINT64_TYPE.
(uint32_type_node): New.
(uint64_type_node): Ditto.
* tree.c (build_common_tree_nodes_2): Initialize
uint32_type_node and uint64_type_node.
* builtins.c (expand_builtin_bswap): New.
(expand_builtin): Call.
(fold_builtin_bswap): New.
(fold_builtin_1): Call.
* fold-const.c (tree_expr_nonnegative_p): Return true
for bswap.
* builtin-types.def (BT_UINT32): New.
(BT_UINT64): Ditto.
(BT_FN_UINT32_UINT32): Ditto.
(BT_FN_UINT64_UINT64): Ditto.
* builtins.def (BUILT_IN_BSWAP32): New.
(BUILT_IN_BSWAP64): Ditto.
* rtl.def (BSWAP): New.
* genattrtab.c (check_attr_value): New.
* libgcc2.c (__bswapSI2): New.
(__bswapDI2): Ditto.
* libgcc2.h (__bswapSI2): Declare.
(__bswapDI2): Ditto.
* mklibgcc.in (lib2funcs): Add _bswapsi2 and _bswapdi2.
* simplify-rtx.c (simplify_const_unary_operation): Return
0 for BSWAP.
* libgcc-std.ver (__bwapsi2): Add.
(__bswapdi2): Ditto.
* reload1.c (eliminate_regs_1): Add bswap.
(elimination_effects): Ditto.
* config/i386/i386.h (x86_bswap): New.
(TARGET_BSWAP): Use.
* config/i386/i386.c (x86_bswap): Set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118361 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoIn gcc/:
geoffk [Wed, 1 Nov 2006 05:06:12 +0000 (05:06 +0000)]
In gcc/:
* coverage.c (coverage_checksum_string): Update comment.
* dwarf2out.c (switch_to_eh_frame_section): Update for removal
of get_file_function_name.
* cgraphunit.c (cgraph_build_static_cdtor): Update for rename
of get_file_function_name_long.
* tree.c (get_file_function_name): Rename from
get_file_function_name_long; improve comment; handle 'I' and 'D'
specially when the target has ctor/dtor support; remove special
handling for 'F'.
(get_file_function_name): Remove.
* tree.h (get_file_function_name): Rename from
        get_file_function_name_long.
(get_file_function_name): Remove prototype.
In gcc/cp/:
* name-lookup.c (get_anonymous_namespace_name): New.
(push_namespace_with_attribs): Use get_anonymous_namespace_name.
* decl2.c (start_objects): Update for rename of
get_file_function_name_long.
In gcc/fortran/:
* trans-decl.c (gfc_generate_constructors): Update for removal
of get_file_function_name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118360 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Remove.
geoffk [Wed, 1 Nov 2006 04:55:19 +0000 (04:55 +0000)]
* config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Remove.
* config/darwin.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.

* config/darwin.h (LINK_COMMAND_SPEC): Don't do weird things with -@.
Call dsymutil when compiling and linking one or more source files
in one step.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118359 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR 15834
geoffk [Wed, 1 Nov 2006 04:53:33 +0000 (04:53 +0000)]
PR 15834
* config/darwin.h (NO_IMPLICIT_EXTERN_C): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118358 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
geoffk [Wed, 1 Nov 2006 04:48:15 +0000 (04:48 +0000)]
* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
inline static functions in c99 mode.

PR 16622
* doc/extend.texi (Inline): Update.
* c-tree.h (struct language_function): Remove field 'extern_inline'.
* c-decl.c (current_extern_inline): Delete.
(pop_scope): Adjust test for an undefined nested function.
Add warning about undeclared inline function.
(diagnose_mismatched_decls): Update comments.  Disallow overriding
of inline functions in a translation unit in C99.  Allow inline
declarations in C99 at any time.
(merge_decls): Boolize variables.  Handle C99 'extern inline'
semantics.
(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
C99 inline semantics.
(start_function): Don't clear current_extern_inline.  Don't set
DECL_EXTERNAL.
(c_push_function_context): Don't push current_extern_inline.
(c_pop_function_context): Don't restore current_extern_inline.

PR 11377
* c-typeck.c (build_external_ref): Warn about static variables
used in extern inline functions.
* c-decl.c (start_decl): Warn about static variables declared
in extern inline functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118357 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
geoffk [Wed, 1 Nov 2006 04:47:30 +0000 (04:47 +0000)]
* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
inline static functions in c99 mode.

PR 16622
* doc/extend.texi (Inline): Update.
* c-tree.h (struct language_function): Remove field 'extern_inline'.
* c-decl.c (current_extern_inline): Delete.
(pop_scope): Adjust test for an undefined nested function.
Add warning about undeclared inline function.
(diagnose_mismatched_decls): Update comments.  Disallow overriding
of inline functions in a translation unit in C99.  Allow inline
declarations in C99 at any time.
(merge_decls): Boolize variables.  Handle C99 'extern inline'
semantics.
(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
C99 inline semantics.
(start_function): Don't clear current_extern_inline.  Don't set
DECL_EXTERNAL.
(c_push_function_context): Don't push current_extern_inline.
(c_pop_function_context): Don't restore current_extern_inline.

PR 11377
* c-typeck.c (build_external_ref): Warn about static variables
used in extern inline functions.
* c-decl.c (start_decl): Warn about static variables declared
in extern inline functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118356 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR middle-end/23470
sayle [Wed, 1 Nov 2006 02:56:45 +0000 (02:56 +0000)]
PR middle-end/23470
* tree.h (tree_expr_nonnegative_p): Return "bool" instead of "int".
* fold-const.c (tree_expr_nonnegative_p): Likewise.  Consider
pow(x,y) and powi(x,y) to be nonnegative if either x is nonnegative
or y is an even integer.

* gcc.dg/pr23470-1.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118355 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Wed, 1 Nov 2006 00:17:53 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118353 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agofortran/ChangeLog:
aldot [Tue, 31 Oct 2006 23:38:58 +0000 (23:38 +0000)]
fortran/ChangeLog:
2006-11-01  Bernhard Fischer  <aldot@gcc.gnu.org>

        PR fortran/29537
        * trans-common.c (gfc_trans_common): If the blank common is
        in a procedure or program without a name then proc_name is null, so use
        the locus of the common.
        (gfc_sym_mangled_common_id): Fix whitespace.
        * match.c (gfc_match_common): Emit warning about blank common in
        block data.

testsuite/ChangeLog:
2006-11-01  Bernhard Fischer  <aldot@gcc.gnu.org>

        PR fortran/29537
        * gfortran.dg/blockdata_1.f90: Add warning about blank common in block
data.
        * gfortran.dg/blockdata_2.f90: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118347 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gcc.c-torture/execute/20061031-1.c: New test.
ebotcazou [Tue, 31 Oct 2006 23:29:06 +0000 (23:29 +0000)]
    * gcc.c-torture/execute/20061031-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118344 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * inclhack.def (hpux11_extern_sendfile): New.
sje [Tue, 31 Oct 2006 22:28:18 +0000 (22:28 +0000)]
* inclhack.def (hpux11_extern_sendfile): New.
(hpux11_extern_sendpath): New.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118343 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Thomas Koenig <Thomas.Koenig@online.de>
tkoenig [Tue, 31 Oct 2006 20:58:26 +0000 (20:58 +0000)]
2006-10-31  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/29627
* libgfortran.h: Add ERROR_SHORT_RECORD
* runtime/error.c (translate_error): Add case
for ERROR_SHORT_RECORD.
* io/transfer.c (read_block_direct):  Separate codepaths
for stream and record unformatted I/O.  Remove unneeded
tests for standard input, padding and formatted I/O.
If the record is short, read in as much data as possible,
then raise the error.

2006-10-31  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/29627
* gfortran.dg/unf_short_record_1.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118341 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix typo.
charlet [Tue, 31 Oct 2006 20:43:39 +0000 (20:43 +0000)]
Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118340 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * ChangeLog: Forgotten ChangeLog entry for previous commit.
fxcoudert [Tue, 31 Oct 2006 20:17:11 +0000 (20:17 +0000)]
* ChangeLog: Forgotten ChangeLog entry for previous commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118339 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR fortran/29067
fxcoudert [Tue, 31 Oct 2006 20:15:22 +0000 (20:15 +0000)]
PR fortran/29067

* decl.c (gfc_set_constant_character_len): NULL-terminate the
character constant string.
* data.c (create_character_intializer): Likewise.
* expr.c (gfc_simplify_expr): NULL-terminate the substring
character constant.
* primary.c (match_hollerith_constant): NULL-terminate the
character constant string.

* gfortran.dg/pr29067.f: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118338 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoResync.
charlet [Tue, 31 Oct 2006 20:11:46 +0000 (20:11 +0000)]
Resync.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118337 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Joseph Myers <joseph@codesourcery.com>
jsm28 [Tue, 31 Oct 2006 19:58:21 +0000 (19:58 +0000)]
2006-10-31  Joseph Myers  <joseph@codesourcery.com>
            Richard Sandiford  <richard@codesourcery.com>

* lib/target-supports.exp (get_compiler_messages): Append options
as a single list element.
(check_effective_target_arm_vfp_ok): New.
* gcc.dg/arm-vfp1.c: Use arm_vfp_ok.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118334 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoResync.
charlet [Tue, 31 Oct 2006 18:21:54 +0000 (18:21 +0000)]
Resync.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118333 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoAdd new Ada test cases.
charlet [Tue, 31 Oct 2006 18:20:42 +0000 (18:20 +0000)]
Add new Ada test cases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118332 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 31 Oct 2006 18:19:52 +0000 (18:19 +0000)]
2006-10-31  Eric Botcazou  <ebotcazou@adacore.com>
    Nicolas Setton  <setton@adacore.com>
    Olivier Hainque  <hainque@adacore.com>
    Gary Dismukes  <dismukes@adacore.com>

* gigi.h: (tree_code_for_record_type): Declare.
(add_global_renaming_pointer): Rename to record_global_renaming_pointer.
(get_global_renaming_pointers): Rename to
invalidate_global_renaming_pointers.
(static_ctors): Delete.
(static_dtors): Likewise.
(gnat_write_global_declarations): Declare.
(create_var_decl): Adjust descriptive comment to indicate that the
subprogram may return a CONST_DECL node.
(create_true_var_decl): Declare new function, similar to
create_var_decl but forcing the creation of a VAR_DECL node.
(get_global_renaming_pointers): Declare.
(add_global_renaming_pointer): Likewise.

* ada-tree.h (DECL_READONLY_ONCE_ELAB): New macro.

* decl.c (gnat_to_gnu_entity) <case E_Function>: Don't copy the type
tree before setting TREE_ADDRESSABLE for by-reference return mechanism
processing.
(gnat_to_gnu_entity): Remove From_With_Type from computation for
imported_p.
<E_Access_Type>: Use the Non_Limited_View as the full view of the
designated type if the pointer comes from a limited_with clause.  Make
incomplete designated type if it is in the main unit and has a freeze
node.
<E_Incomplete_Type>: Rework to treat Non_Limited_View, Full_View, and
Underlying_Full_View similarly.  Return earlier if the full view already
has an associated tree.
(gnat_to_gnu_entity) <E_Record_Type>: Restore comment.
(gnat_to_gnu_entity) <E_Record_Type>: Do not use a dummy type.
(gnat_to_gnu_entity) <E_Variable>: Set TYPE_REF_CAN_ALIAS_ALL on the
reference type built for objects with an address clause.
Use create_true_var_decl with const_flag set for
DECL_CONST_CORRESPONDING_VARs, ensuring a VAR_DECL is created with
TREE_READONLY set.
(gnat_to_gnu_entity, case E_Enumeration_Type): Set TYPE_NAME
for Character and Wide_Character types. This info is read by the
dwarf-2 writer, and is needed to be able to use the command "ptype
character" in the debugger.
(gnat_to_gnu_entity): When generating a type representing
a Character or Wide_Character type, set the flag TYPE_STRING_FLAG,
so that debug writers can distinguish it from ordinary integers.
(elaborate_expression_1): Test the DECL_READONLY_ONCE_ELAB flag in
addition to TREE_READONLY to assert the constantness of variables for
elaboration purposes.
(gnat_to_gnu_entity, subprogram cases): Change loops on formal
parameters to call new Einfo function First_Formal_With_Extras.
(gnat_to_gnu_entity): In type_annotate mode, replace a discriminant of a
protected type with its corresponding discriminant, to obtain a usable
declaration
(gnat_to_gnu_entity) <E_Access_Protected_Subprogram_Type>: Be prepared
for a multiple elaboration of the "equivalent" type.
(gnat_to_gnu_entity): Adjust for renaming of add_global_renaming_pointer
into record_global_renaming_pointer.
(gnat_to_gnu_entity) <E_Array_Type>: Do not force
TYPE_NONALIASED_COMPONENT to 0 if the element type is an aggregate.
<E_Array_Subtype>: Likewise.
(gnat_to_gnu_entity) <E_Incomplete_Subtype>: Add support for regular
incomplete subtypes and incomplete subtypes of incomplete types visible
through a limited with clause.
(gnat_to_gnu_entity) <E_Array_Subtype>: Take into account the bounds of
the base index type for the maximum size of the array only if they are
constant.
(gnat_to_gnu_entity, renaming object case): Do not wrap up the
expression into a SAVE_EXPR if stabilization failed.

* utils.c (create_subprog_decl): Turn TREE_ADDRESSABLE on the type of
a result decl into DECL_BY_REFERENCE on this decl, now what is expected
by lower level compilation passes.
(gnat_genericize): New function, lowering a function body to GENERIC.
Turn the type of RESULT_DECL into a real reference type if the decl
has been marked DECL_BY_REFERENCE, and adjust references to the latter
accordingly.
(gnat_genericize_r): New function. Tree walking callback for
gnat_genericize.
(convert_from_reference, is_byref_result): New functions. Helpers for
gnat_genericize_r.
(create_type_decl): Call gnat_pushdecl before calling
rest_of_decl_compilation, to make sure that field TYPE_NAME of
type_decl is properly set before calling the debug information writers.
(write_record_type_debug_info): The heuristics which compute the
alignment of a field in a variant record might not be accurate. Add a
safety test to make sure no alignment is set to a smaller value than
the alignment of the field type.
(make_dummy_type): Use the Non_Limited_View as the underlying type if
the type comes from a limited_with clause. Do not loop on the full view.
(GET_GNU_TREE, SET_GNU_TREE, PRESENT_GNU_TREE): New macros.
(dummy_node_table): New global variable, moved from decl.c.
(GET_DUMMY_NODE, SET_DUMMY_NODE, PRESENT_DUMMY_NODE): New macros.
(save_gnu_tree): Use above macros.
(get_gnu_tree): Likewise.
(present_gnu_tree): Likewise.
(init_dummy_type): New function, moved from decl.c. Use above macros.
(make_dummy_type): Likewise.
(tree_code_for_record_type): New function extracted from make_dummy_type
(init_gigi_decls): Set DECL_IS_MALLOC on gnat_malloc.
(static_ctors): Change it to a vector, make static.
(static_dtors): Likewise.
(end_subprog_body): Adjust for above change.
(build_global_cdtor): Moved from trans.c.
(gnat_write_global_declarations): Emit global constructor and
destructor, and call cgraph_optimize before emitting debug info for
global declarations.
(global_decls): New global variable.
(gnat_pushdecl): Store the global declarations in global_decls, for
later use.
(gnat_write_global_declarations): Emit debug information for global
 declarations.
(create_var_decl_1): Former create_var_decl, with an extra argument to
 state whether the creation of a CONST_DECL is allowed.
(create_var_decl): Behavior unchanged. Now a wrapper around
create_var_decl_1 allowing CONST_DECL creation.
(create_true_var_decl): New function, similar to create_var_decl but
forcing the creation of a VAR_DECL node (CONST_DECL not allowed).
(create_field_decl): Do not always mark the field as addressable
if its type is an aggregate.
(global_renaming_pointers): New static variable.
(add_global_renaming_pointer): New function.
(get_global_renaming_pointers): Likewise.

* misc.c (gnat_dwarf_name): New function.
(LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name.
(gnat_post_options): Add comment about structural alias analysis.
(gnat_parse_file): Do not call cgraph_optimize here.
(LANG_HOOKS_WRITE_GLOBALS): Define to gnat_write_global_declarations.

* trans.c (process_freeze_entity): Don't abort if we already have a
non dummy GCC tree for a Concurrent_Record_Type, as it might
legitimately have been elaborated while processing the associated
Concurrent_Type prior to this explicit freeze node.
(Identifier_to_gnu): Do not make a variable referenced in a SJLJ
exception handler volatile if it is of variable size.
(process_type): Remove bypass for types coming from a limited_with
clause.
(call_to_gnu): When processing the copy-out of a N_Type_Conversion GNAT
actual, convert the corresponding gnu_actual to the real destination
type when necessary.
(add_decl_expr): Set the DECL_READONLY_ONCE_ELAB flag on variables
originally TREE_READONLY but whose elaboration cannot be performed
statically.
Part of fix for F504-021.
(tree_transform, subprogram cases): Change loops on formal parameters to
call new Einfo function First_Formal_With_Extras.
(gnat_to_gnu) <N_Op_Shift_Right_Arithmetic>: Ignore constant overflow
stemming from type conversion for the lhs.
(Attribute_to_gnu) <Attr_Alignment>: Also divide the alignment by the
number of bits per unit for components of records.
(gnat_to_gnu) <N_Code_Statement>: Mark operands addressable if needed.
(Handled_Sequence_Of_Statements_to_gnu): Register the cleanup associated
with At_End_Proc after the SJLJ EH cleanup.
(Compilation_Unit_to_gnu): Call elaborate_all_entities only on the main
compilation unit.
(elaborate_all_entities): Do not retest type_annotate_only.
(tree_transform) <N_Abstract_Subprogram_Declaration>: Process the
result type of an abstract subprogram, which may be an itype associated
with an anonymous access result (related to AI-318-02).
(build_global_cdtor): Move to utils.c.
(Case_Statement_to_gnu): Avoid adding the choice of a when statement if
this choice is not a null tree nor an integer constant.
(gigi): Run unshare_save_expr via walk_tree_without_duplicates
on the body of elaboration routines instead of mark_unvisited.
(add_stmt): Do not mark the tree.
(add_decl_expr): Tweak comment.
(mark_unvisited): Delete.
(unshare_save_expr): New static function.
(call_to_gnu): Issue an error when making a temporary around a
procedure call because of non-addressable actual parameter if the
type of the formal is by_reference.
(Compilation_Unit_to_gnu): Invalidate the global renaming pointers
after building the elaboration routine.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118331 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Robert Dewar <dewar@adacore.com>
charlet [Tue, 31 Oct 2006 18:16:03 +0000 (18:16 +0000)]
2006-10-31  Robert Dewar  <dewar@adacore.com>
    Thomas Quinot  <quinot@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>

* fmap.adb: Put routines in alpha order

* g-boumai.ads: Remove redundant 'in' keywords

* g-cgi.adb: Minor reformatting

* g-cgi.ads: Remove redundant 'in' keywords

* get_targ.adb: Put routines in alpha order

* prj-attr.ads: Minor reformatting

* s-atacco.ads: Minor reformatting

* scn.adb: Put routines in alpha order

* sinput-l.adb: Minor comment fix

* sinput-p.adb: Minor comment fix

* s-maccod.ads: Minor reformatting

* s-memory.adb: Minor reformatting

* s-htable.adb: Fix typo in comment.

* s-secsta.adb: Minor comment update.

* s-soflin.adb: Minor reformatting

* s-stoele.ads:
Add comment about odd qualification in Storage_Offset declaration

* s-strxdr.adb:
Remove unnecessary 'in' keywords for formal parameters.

* treeprs.adt: Minor reformatting

* urealp.adb: Put routines in alpha order

* s-wchcon.ads, s-wchcon.adb (Get_WC_Encoding_Method): New version
taking string.

* s-asthan-vms-alpha.adb: Remove redundant 'in' keywords

* g-trasym-vms-ia64.adb: Remove redundant 'in' keywords

* env.c (__gnat_unsetenv): Unsetenv is unavailable on LynxOS, so
workaround as on other platforms.

* g-eacodu-vms.adb: Remove redundant 'in' keywords
* g-expect-vms.adb: Remove redundant 'in' keywords

* gnatdll.adb (Add_Files_From_List): Handle Name_Error and report a
clear error message if the list-of-files file cannot be opened.

* g-thread.adb (Unregister_Thread_Id): Add use type Thread_Id so the
equality operator is always visible.

* lang.opt: Woverlength-strings: New option.

* nmake.adt:
Update copyright, since nmake.ads and nmake.adb have changed.

* osint-b.ads, osint-b.adb (Time_From_Last_Bind): removed function .
(Binder_Output_Time_Stamps_Set): removed.
(Old_Binder_Output_Time_Stamp): idem.
(New_Binder_Output_Time_Stamp): idem.
(Recording_Time_From_Last_Bind): idem.
(Recording_Time_From_Last_Bind): Make constant.

* output.ads, output.adb (Write_Str): Allow LF characters
(Write_Spaces): New procedure

* prepcomp.adb (Preproc_Data_Table): Change Increment from 5% to 100%

* inline.adb: Minor reformatting

* s-asthan-vms-alpha.adb: Remove redundant 'in' keywords

* s-mastop-vms.adb: Remove redundant 'in' keywords

* s-osprim-vms.adb: Remove redundant 'in' keywords

* s-trafor-default.adb: Remove redundant 'in' keywords

* 9drpc.adb: Remove redundant 'in' keywords

* s-osinte-mingw.ads: Minor reformatting

* s-inmaop-posix.adb: Minor reformatting

* a-direio.ads: Remove quotes from Compile_Time_Warning message

* a-exexda.adb: Minor code reorganization

* a-filico.adb: Minor reformatting

* a-finali.adb: Minor reformatting

* a-nudira.ads: Remove quote from Compile_Time_Warning message

* a-numeri.ads: Minor reformatting

* a-sequio.ads: Remove quotes from Compile_Time_Warning message

* exp_pakd.ads: Fix obsolete comment

* a-ztenau.adb, a-ztenio.adb, a-wtenau.adb, a-tienau.adb,
a-wtenio.adb (Put): Avoid assuming low bound of string is 1.
Probably not a bug, but certainly neater and more efficient.

* a-tienio.adb: Minor reformatting

* comperr.adb (Compiler_Abort): Call Cancel_Special_Output at start
Avoid assuming low bound of string is 1.

* gnatbind.adb: Change Bindusg to package and rename procedure as
Display, which now ensures that it only outputs usage information once.
(Scan_Bind_Arg): Avoid assuming low bound of string is 1.

* g-pehage.adb (Build_Identical_Keysets): Replace use of 1 by
Table'First.

* g-regpat.adb (Insert_Operator): Add pragma Warnings (Off) to kill
warning.
(Match): Add pragma Assert to ensure that Matches'First is zero

* g-regpat.ads (Match): Document that Matches lower bound must be zero

* makeutl.adb (Is_External_Assignment): Add pragma Assert's to check
documented preconditions (also kills warnings about bad indexes).

* mdll.adb (Build_Dynamic_Library): Avoid assumption that Afiles'First
is 1.
(Build_Import_Library): Ditto;

* mdll-utl.adb: (Gnatbind): Avoid assumption that Alis'First = 1

* rtsfind.adb (RTE_Error_Msg): Avoid assuming low bound of string is 1.

* sem_case.adb (Analyze_Choices): Add pragma Assert to check that
lower bound of choice table is 1.

* sem_case.ads (Analyze_Choices): Document that lower bound of
Choice_Table is 1.

* s-imgdec.adb (Set_Decimal_Digits): Avoid assuming low bound of
string is 1.

* uintp.adb (Init_Operand): Document that low bound of Vec is always 1,
and add appropriate Assert pragma to suppress warnings.

* atree.h, atree.ads, atree.adb
Change Elist24 to Elist25
Add definitions of Field28 and Node28
(Traverse_Field): Use new syntactic parent table in sinfo.

* cstand.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only

* itypes.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only

* exp_tss.adb: Put routines in alpha order

* fe.h: Remove redundant declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118330 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Robert Dewar <dewar@adacore.com>
charlet [Tue, 31 Oct 2006 18:15:40 +0000 (18:15 +0000)]
2006-10-31  Robert Dewar  <dewar@adacore.com>

* s-osinte-tru64.adb:
Mark Asm statements Volatile to prevent warnings (seems a
reasonable change anyway)
Fixes new warnings

* s-mastop-irix.adb: Add Volatile to Asm statements
Suppresses warning, and seems appropriate in any case

* s-osinte-vms.adb: Add Volatile to Asm statement

* s-vaflop-vms-alpha.adb: Add Volatile to Asm statements

* exp_code.ads, exp_code.adb (Asm_Input_Value): Note that Error can be
returned.
Add call to Check_Code_Statement

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118329 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2006-10-31 Robert Dewar <dewar@adacore.com>
charlet [Tue, 31 Oct 2006 18:14:24 +0000 (18:14 +0000)]
2006-10-31  Robert Dewar  <dewar@adacore.com>
    Cyrille Comar  <comar@adacore.com>
    Ben Brosgol  <brosgol@adacore.com>

* debug.adb:  Update flags documentation

        * gnat_ugn.texi: Add documentation for new -gnatwq switch
        Clean up documentation for several other warning switches
        Clarify how task stack size can be specified with various
        versions of Windows.
        Add note that -gnatVo includes ranges including loops
Add documentation for -gnatL switch
Add note on elaboration warning for initializing variables
Add documentation for new -gnatwt warning switch
Document new form of pragma Warnings (On|Off, string)
Add comment on use of pragma Warnings to control warnings
Add documentation for -gnatjnn switch
Modify section on interfacing with C for VMS 64-bit.
Add doc for -gnatVe/E
Add documentation of new warning flags -gnatww/-gnatwW
Add warnings about address clause overlays to list of warnings
(Exception Handling Control): Document that the option --RTS must be
used consistently for gcc and gnatbind.
Clarify that inlining is not always possible
Update documentation on pragma Unchecked_Union.

* gnat_rm.texi:
Add documentation for new extended version of pragma Obsolescent
Add documentation for implementation defined attribute 'Stub_Type.
Add note on use of Volatile in asm statements
Add documentation on use of pragma Unreferenced in context clause
Document new form of pragma Warnings (On|Off, pattern)
Document pragma Wide_Character_Encoding
Add note that pragma Restrictions (No_Elaboration_Code) is only fully
enforced if code generation is active.
Add section on pragma Suppress to document GNAT specific check
Alignment_Check
Clarify difference between No_Dispatching_Calls & No_Dispatch.
Add documentation for pragma Restrictions (No_Elaboration_Code)

* gnat-style.texi:
Add comments on layout of subprogram local variables in the
presence of nested subprograms.

        * ug_words: Resync.

* elists.ads: Minor reformatting
Node returns Node_Or_Entity_Id (doc change only)

* xgnatugn.adb: Replace ACADEMICEDITION with GPLEDITION

* g-arrspl.ads (Create): Update comments.

* sem.ads: Add details on the handling of the scope stack.

        * usage.adb: Update documentation.

* validsw.ads, validsw.adb:
Add definition of Validity_Check_Components and implement -gnatVe/E

        * vms_data.ads: Add missing VMS qualifiers.

* s-addope.ads: Add documentation on overflow and divide by zero

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118328 138bc75d-0d04-0410-961f-82ee72b054a4