2008-03-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34813
* resolve.c (resolve_structure_cons): It is an error to assign
NULL to anything other than a pointer or allocatable component.
PR fortran/33295
* resolve.c (resolve_symbol): If the symbol is a derived type,
resolve the derived type. If the symbol is a derived type
function, ensure that the derived type is visible in the same
namespace as the function.
2008-03-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34813
* gfortran.dg/null_3.f90 : New test
PR fortran/33295
* gfortran.dg/module_function_type_1.f90 : New test
From-SVN: r133488
2008-03-24 Richard Guenther <rguenther@suse.de>
PR c/22371
* gimplify.c (gimplify_modify_expr): For frontend type-correct
pointer assignments change conversions according to middle-end rules.
(gimplify_modify_expr_rhs): Deal with NULL TARGET_EXPR_INITIAL.
* configure.ac: Include type checking in yes.
* configure: Regenerate.
From-SVN: r133479
gcc/ada/
2008-03-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR documentation/15479
* Make-lang.in (doc/gnat_ugn.texi) Renamed from ...
(doc/gnat_ugn_unw.texi): ... this, and adjusted.
(doc/gnat_ugn.info): Renamed from ...
(doc/gnat_ugn_unw.info): ... this.
(doc/gnat_ugn.dvi): Renamed from ...
(doc/gnat_ugn_unw.dvi): ... this.
(doc/gnat_ugn.pdf): Renamed from ...
(doc/gnat_ugn_unw.pdf): ... this.
(ADA_INFOFILES, ADA_PDFFILES, ada.install-info, ada.dvi):
Adjusted.
* gnat_ugn.texi (FILE): Hard-code gnat_ugn; set filename
unconditionally to gnat_ugn.info. Fix cross references to the
GNAT Reference Manual. Convert links to the GCC, GDB, Emacs,
and GNU make manuals to be proper texinfo links.
* gnat_rm.texi: Fix cross references to the GNAT User's Guide.
From-SVN: r133470
2008-03-05 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386-modes.def: Use 4 byte alignment on DI for
32bit host.
2008-03-19 Uros Bizjak <ubizjak@gmail.com>
PR target/35496
* stor-layout.c (update_alignment_for_field): Set minimum alignment
of the underlying type of a MS bitfield layout to the natural
alignment of the type.
2008-03-22 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (assign_386_stack_local): Align DImode slots
to their natural alignment to avoid store forwarding stalls.
From-SVN: r133461
2008-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/35632
* io/transfer.c (data_transfer_init): Fix whitespace.
(next_record_w): Truncate the file only if the stream
position is short of the file end.
From-SVN: r133454
2008-03-22 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_expr): Recurse again for invariant addresses.
For PHI nodes verify the address is invariant.
* tree-ssa-ccp.c (ccp_decl_initial_min_invariant): Remove.
(get_symbol_constant_value): Use is_gimple_min_invariant.
(maybe_fold_stmt_indirect): Likewise.
From-SVN: r133453
gcc/
PR rtl-optimization/33927
* Makefile.in (dse.o): Depend on $(TM_P_H).
* expr.h (extract_low_bits): Declare.
* expmed.c (extract_low_bits): New function.
* rtlhooks.c (gen_lowpart_general): Generalize SUBREG handling.
* dse.c: Include tm_p.h.
(find_shift_sequence): Remove the read_reg argument and return the
read value. Emit the instructions instead of returning them.
Iterate on new_mode rather than calculating it each time.
Check MODES_TIEABLE_P. Use simplify_gen_subreg to convert the
source to NEW_MODE and extract_low_bits to convert the shifted
value to READ_MODE.
(replace_read): Allow the load and store to have different mode
classes. Use extract_low_bits when SHIFT == 0. Create the shift
or extraction instructions before trying the replacement. Update
dump-file code accordingly, avoiding use of REGNO (store_info->rhs).
gcc/testsuite/
* gcc.target/mips/dse-1.c: Add checks for zeros.
From-SVN: r133452
2008-03-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR target/27946
* config/rs6000/rs6000.md (floatdidf2): Discouraging fprs and
encouraging but not allowing gprs for input;
change the input constraint to !f#r.
(fix_truncdfdi2): Discouraging fprs and encouraging but not allowing
gprs for output;
change the output constraint to !f#r.
2008-03-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR target/27946
* gcc.target/powerpc/ppc64-double-1.c: New testcase.
From-SVN: r133439
2008-03-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR target/27947
* config/rs6000/rs6000.md (floatdidf2): Discouraging fprs and
encouraging but not allowing gprs for input;
change the input constraint to !f#r.
(fix_truncdfdi2): Discouraging fprs and encouraging but not allowing
gprs for output;
change the output constraint to !f#r.
2008-03-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR target/27947
* gcc.target/powerpc/ppc64-double-1.c: New testcase.
From-SVN: r133438
PR target/13958
* config/i386/i386.md ("*floatunssi<mode2>_1"): New pattern with
corresponding post-reload splitters.
("floatunssi<mode>2"): Expand to unsigned_float x87 insn pattern
when x87 FP math is selected.
* config/i386/i386-protos.h (ix86_expand_convert_uns_sixf_sse):
New function prototype.
* config/i386/i386.c (ix86_expand_convert_uns_sixf_sse): New
unreachable function to ease macroization of insn patterns.
From-SVN: r133435
2008-03-21 Janne Blomqvist <jb@gcc.gnu.org>
* gfortran.map: Move erfc_scaled symbols to new symbol node
GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.
From-SVN: r133432
* configure.ac: Add support for --enable-gold.
* Makefile.def: Add gold as a directory like ld.
* configure, Makefile.in: Regenerate.
From-SVN: r133429
2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/32972
* Makefile.am: Add new variable, i_pack_c, containing
pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
pack_c8.c, pack_c10.c, pack_c16.c.
Add m4/pack.m4 to m4_files.
Add i_pack_c to gfor_built_src.
Add rule to generate i_pack_c from m4/pack.m4.
* Makefile.in: Regenerated.
* libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
pack_c10, pack_c16.
* intrinsics/pack_generic.c: Add calls to specific
pack functions.
* m4/pack.m4: New file.
* generated/pack_i1.c: New file.
* generated/pack_i2.c: New file.
* generated/pack_i4.c: New file.
* generated/pack_i8.c: New file.
* generated/pack_i16.c: New file.
* generated/pack_r4.c: New file.
* generated/pack_r8.c: New file.
* generated/pack_r10.c: New file.
* generated/pack_r16.c: New file.
* generated/pack_c4.c: New file.
* generated/pack_c8.c: New file.
* generated/pack_c10.c: New file.
* generated/pack_c16.c: New file.
2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/32972
* internal_pack_1.f90: New test case.
* internal_pack_2.f90: New test case.
* internal_pack_3.f90: New test case.
From-SVN: r133427
2008-03-21 Martin Jambor <mjambor@suse.cz>
* tree-data-ref.c (dump_data_dependence_relation): Avoid data
reference dumps if ddr is NULL or dependence is unknown.
From-SVN: r133419
2008-03-21 Olivier Hainque <hainque@adacore.com>
Ed Schonberg <schonberg@adacore.com>
* trans.c (addressable_p): Accept COND_EXPR when both arms
are addressable.
(gnat_gimplify_expr): Let the gimplifier handle &COND_EXPR.
(call_to_gnu): Do not use name reference in the error message
for a misaligned by_reference_parameter. The actual may be a
general expression.
From-SVN: r133418
2008-03-20 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/testsuite_abi.cc: Add support for not counting
GLIBCXX_LDBL_* compat symbols missing if no long double compat
symbols under test.
From-SVN: r133417
* config/sh/linux-atomic.asm (ATOMIC_TEST_AND_SET): Take
unsigned extension into account.
(ATOMIC_COMPARE_AND_SWAP): Likewise.
(ATOMIC_FETCH_AND_OP, ATOMIC_FETCH_AND_COMBOP): Likewise.
Do computations on a scratch register.
From-SVN: r133405
2008-03-20 Richard Guenther <rguenther@suse.de>
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Remove
special casing of constant qualifiers.
* tree-ssa.c (useless_type_conversion_p_1): Instead do not
care about them in general.
* tree-ssa-ccp.c (ccp_fold): Addresses are constant or not
regardless of their type.
(fold_stmt_r): Forcefully fold *& if we end up with that.
* gcc.dg/tree-ssa/ssa-ccp-17.c: New testcase.
From-SVN: r133400