Commit Graph

92521 Commits

Author SHA1 Message Date
Janne Blomqvist 6b6802109e PR libfortran/39665 libfortran/39702 libfortran/39709
2009-04-10  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/39665 libfortran/39702 libfortran/39709
	* io/io.h (st_parameter_dt): Revert aligned attribute from u.p.value.
        * io/list_read.c (read_complex): Read directly into user pointer.
        (read_real): Likewise.
        (list_formatted_read_scalar): Update read_complex and read_real calls.
        (nml_read_obj): Read directly into user pointer.

From-SVN: r145875
2009-04-10 10:23:25 +03:00
H.J. Lu 8b7a6bb2fa re PR testsuite/35621 (gcc.target/i386/ssse3-*.c violates C/C++ aliasing rules)
2009-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/35621
	* gcc.target/i386/avx-vpabsb-1.c: Add -fno-strict-aliasing.
	* gcc.target/i386/avx-vpabsb-1.c: Likewise.
	* gcc.target/i386/avx-vpabsd-1.c: Likewise.
	* gcc.target/i386/avx-vpabsw-1.c: Likewise.
	* gcc.target/i386/avx-vpalignr-1.c: Likewise.
	* gcc.target/i386/avx-vphaddd-1.c: Likewise.
	* gcc.target/i386/avx-vphaddsw-1.c: Likewise.
	* gcc.target/i386/avx-vphaddw-1.c: Likewise.
	* gcc.target/i386/avx-vphsubd-1.c: Likewise.
	* gcc.target/i386/avx-vphsubsw-1.c: Likewise.
	* gcc.target/i386/avx-vphsubw-1.c: Likewise.
	* gcc.target/i386/avx-vpmaddubsw-1.c: Likewise.
	* gcc.target/i386/avx-vpmulhrsw-1.c: Likewise.
	* gcc.target/i386/avx-vpshufb-1.c: Likewise.
	* gcc.target/i386/avx-vpsignb-1.c: Likewise.
	* gcc.target/i386/avx-vpsignd-1.c: Likewise.
	* gcc.target/i386/avx-vpsignw-1.c: Likewise.

From-SVN: r145871
2009-04-09 17:30:50 -07:00
GCC Administrator 1365aa4b1d Daily bump.
From-SVN: r145870
2009-04-10 00:16:52 +00:00
Paolo Carlini 96a9203b1c PR libstdc++/39629 (final bits)
2009-04-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/39629 (final bits)
	* include/bits/random.h (subtract_with_carry_engine<>::_S_modulus):
	Remove, consistently use __detail::_Shift<_UIntType, __w>::__value.
	* include/bits/random.tcc (shuffle_order_engine<>::operator()()):
	Fix formula for __j.
	* include/bits/random.tcc (operator==(const normal_distribution<>&,
	const normal_distribution<>&): Remove.
	* include/bits/random.h (operator==(const uniform_int_distribution<>&,
	const uniform_int_distribution<>&), operator==(const
	uniform_real_distribution<>&, const uniform_real_distribution<>&),
	operator==(const normal_distribution<>&, const normal_distribution<>&), 
	operator==(const lognormal_distribution<>&,
	const lognormal_distribution<>&), operator==(const
	chi_squared_distribution<>&, const chi_squared_distribution<>&),
	operator==(const cauchy_distribution<>&, const cauchy_distribution<>&),
	operator==(const fisher_distribution<>&, const fisher_distribution<>&),
	operator==(const student_t_distribution<>&,
	const student_t_distribution<>&), operator==(const
	bernoulli_distribution<>&, const bernoulli_distribution<>&),
	operator==(const binomial_distribution<>&, const
	binomial_distribution<>&), operator==(const geometric_distribution<>&,
	const geometric_distribution<>&), operator==(const
	negative_binomial_distribution<>&, const 
	negative_binomial_distribution<>&), operator==(const
	poisson_distribution<>&, const poisson_distribution<>&),
	operator==(const exponential_distribution<>&,
	const exponential_distribution<>&), operator==(const
	gamma_distribution<>&, const gamma_distribution<>&), operator==(const
	weibull_distribution<>&, const weibull_distribution<>&),
	operator==(const extreme_value_distribution<>&,
	const extreme_value_distribution<>&), operator==(const
	discrete_distribution<>&, const discrete_distribution<>&),
	operator==(const piecewise_constant_distribution<>&,
	const piecewise_constant_distribution<>&), operator==(const
	piecewise_linear_distribution<>&, const
	piecewise_linear_distribution<>&)): Remove.
	* testsuite/26_numerics/random/uniform_real_distribution/operators/
	serialize.cc: Remove.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/operators/
	serialize.cc: Likewise.

	* include/bits/random.h (linear_congruential_engine<>::seed(_Gen&,
	true_type), linear_congruential_engine<>::seed(_Gen&, false_type),
	mersenne_twister_engine<>::seed(_Gen&,
	true_type), mersenne_twister_engine<>::seed(_Gen&, false_type),
	subtract_with_carry_engine<>::seed(_Gen&,
	true_type), subtract_with_carry_engine<>::seed(_Gen&, false_type)):
	Remove, unused.
	* include/bits/random.tcc (linear_congruential_engine<>::
	seed(_Gen&, false_type): Likewise.

From-SVN: r145867
2009-04-09 23:37:08 +00:00
H.J. Lu 805586285d re PR target/39678 (complex type isn't passed correctly)
gcc/

2009-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/39678
	* config/i386/i386.c (classify_argument): Handle SCmode with
	(bit_offset % 64) != 0.

gcc/testsuite/

2009-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/39678
	* g++.dg/torture/pr39678.C: New.
	* gcc.dg/compat/struct-complex-2.h: Likewise.
	* gcc.dg/compat/struct-complex-2_main.c: Likewise.
	* gcc.dg/compat/struct-complex-2_x.c: Likewise.
	* gcc.dg/compat/struct-complex-2_y.c: Likewise.
	* gcc.dg/torture/pr39678.c: Likewise.
	* gcc.target/i386/pr39678.c: Likewise.

	* gcc.dg/compat/struct-complex-1_x.c: Add -Wno-psabi.
	* gcc.dg/compat/struct-complex-1_y.c: Likewise.

	* gcc.target/x86_64/abi/test_passing_structs.c: Include
	<complex.h>.  Add tests for structure with complex float.

From-SVN: r145865
2009-04-09 15:58:51 -07:00
Sandra Loosemore 8c70d28b4d invoke.texi (Optimize Options): Add cross-reference to -Q --help=optimizers examples.
2009-04-09  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi (Optimize Options): Add cross-reference to
	-Q --help=optimizers examples.

From-SVN: r145864
2009-04-09 18:48:03 -04:00
Jack Howarth dc4e3423e3 configure.host: Restore match for darwin9 or later.
2009-04-09  Jack Howarth  <howarth@bromo.med.uc.edu>

	* configure.host: Restore match for darwin9 or later.
	* configure.ac: Likewise.
	* configure: Regenerate.

From-SVN: r145861
2009-04-09 23:51:57 +02:00
Jack Howarth b93133bcea configure.ac: Restore match for darwin9 or later.
2009-04-09  Jack Howarth  <howarth@bromo.med.uc.edu>

	* configure.ac: Restore match for darwin9 or later. Use double
	brackets since regeneration eats one pair.
	* configure: Regenerate.

From-SVN: r145860
2009-04-09 23:50:14 +02:00
Ben Elliston e1ff19bf80 re PR target/36800 (va_arg for _Decimal128 on 32-bit Power mishandled in certain cases)
PR target/36800

	PR target/36800
	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Do not set
	regalign for the reg == fpr and TDmode case.

testsuite/
	* gcc.dg/dfp/pr36800.c: New.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r145859
2009-04-10 07:26:44 +10:00
David Ayers 52daca759f re PR objc/29200 (%s substituted with "methods"/"selectors" can't be properly translated)
gcc/
2009-04-09  David Ayers  <ayers@fsfe.org>

	PR objc/29200
	* objc/objc-act.c (warn_with_method): Remove helper function.
	(check_duplicates): Call warning and inform directly.
	(really_start_method): Likewise.

From-SVN: r145857
2009-04-09 21:08:18 +00:00
Uros Bizjak 7a715bba70 ChangeLog: Fix ChangeLog.
* gcc/ChangeLog: Fix ChangeLog.
	* gcc/testsuite/ChangeLog: Ditto.

From-SVN: r145855
2009-04-09 22:52:30 +02:00
Eric Botcazou cac9d8d6d2 Fix entry
From-SVN: r145853
2009-04-09 17:46:52 +00:00
Janne Blomqvist 60c063faab re PR libfortran/39665 (Fortran IO using unaligned accesses to read/write doubles.)
2009-04-09  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/39665
	* io/io.h (st_parameter_dt): Add aligned attribute to u.p.value.
	* io/read.c (convert_real): Add note about alignment requirements.

From-SVN: r145852
2009-04-09 20:44:23 +03:00
Ralf Wildenhues d5e90cabae help.exp: New file.
gcc/testsuite/
	* gcc.misc-tests/help.exp: New file.
	* lib/options.exp: New file.

Co-Authored-By: Rafael Avila de Espindola <espindola@google.com>

From-SVN: r145851
2009-04-09 17:23:18 +00:00
Janis Johnson 750d4b2e0f re PR libobjc/36610 (objc_msg_sendv is broken for targets which pass argument via registers)
PR libobjc/36610
	* objc/execute/forward-1.x: New.

From-SVN: r145849
2009-04-09 16:58:34 +00:00
Paolo Bonzini b45f0e58d7 expmed.c (expand_divmod): Always use a comparison for a division by a large unsigned integer.
2009-04-09  Paolo Bonzini  <bonzini@gnu.org>

	* expmed.c (expand_divmod): Always use a comparison for a division
	by a large unsigned integer.

        * fold-const.c (tree_single_nonzero_warnv_p): Always treat decls
        for things others than variables or functions as nonzero.

testsuite:
2009-04-09  Paolo Bonzini  <bonzini@gnu.org>

        * gcc.dg/pr27150-1.c: Change to a link test.

From-SVN: r145846
2009-04-09 16:07:43 +00:00
H.J. Lu 9332c6ebd1 Move gcc ChangeLog entry in revision 145415 to gcc/ChangeLog.
From-SVN: r145844
2009-04-09 08:52:21 -07:00
H.J. Lu 6c44cf7972 Change spaces to tab.
From-SVN: r145843
2009-04-09 08:47:39 -07:00
H.J. Lu d18ff35aff re PR c++/10039 ([macosx] gcc hangs at a c++-Constructor with switch "-Os")
2009-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/10039
	* configure.ac: Require texinfo 4.7.
	* configure: Regenerated.

From-SVN: r145842
2009-04-09 08:44:05 -07:00
Jakub Jelinek 748086b7b2 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Richard Guenther 0a5ec800d7 re PR testsuite/39696 (gcc.dg/tree-ssa/ssa-ccp-25.c scan-tree-dump doesn't work on Linux/ia32)
2009-04-09  Richard Guenther  <rguenther@suse.de>

	PR testsuite/39696
	* ssa-ccp-25.c: Adjust pattern.

From-SVN: r145839
2009-04-09 13:36:57 +00:00
Arnaud Charlet dd8cfe3ae8 [multiple changes]
2009-04-09  Nicolas Setton  <setton@adacore.com>

	* s-osinte-darwin.ads: Fix wrong binding to struc timeval.

	* s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
	struct_timeval.

2009-04-09  Bob Duff  <duff@adacore.com>

	* exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
	internally-generated nodes related to select statements to avoid
	confusing the debugger.

2009-04-09  Pascal Obry  <obry@adacore.com>

	* make.adb: Ensure that all linker arguments are duplicated.

From-SVN: r145838
2009-04-09 15:11:10 +02:00
Arnaud Charlet 59f3dd0a14 [multiple changes]
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* sem_ch5.adb: Minor reformatting

2009-04-09  Vincent Celier  <celier@adacore.com>

	* vms_data.ads:
	Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
	New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
	New qualifier /LXDEBUG=nnn for -gnatDnnn
	For H820-010

	* gnat_ugn.texi:
	Update documentation for VMS qualifiers equivalent to -gnatGnn and
	-gnatDnn

2009-04-09  Nicolas Setton  <setton@adacore.com>

	* s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
	to match layout of siginfo_t in sys/signal.h.

	* gcc-interface/Makefile.in: Add section for x86_64 darwin.

2009-04-09  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.

2009-04-09  Nicolas Setton  <setton@adacore.com>

	* s-oscons-tmplt.c: Allow long lines in the generated spec.
	Add generation of Darwin-specific constants needed when binding to the
	pthread library.

From-SVN: r145837
2009-04-09 14:57:47 +02:00
Robert Dewar 8dc2ddaf05 2009-04-09 Robert Dewar <dewar@adacore.com>
* checks.adb:
        (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
        when no invalid values exist, Avoid duplicate read of atomic variable.

        * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
        (Standard_Unsigned): Set Is_Known_Valid

        * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
	subtype declaration if no constraint.
        (Set_Modular_Size): Set Is_Known_Valid if appropriate
        (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint

From-SVN: r145836
2009-04-09 14:56:35 +02:00
Arnaud Charlet 47cb314ac3 Minor editing.
From-SVN: r145835
2009-04-09 14:37:33 +02:00
Arnaud Charlet f7d7bb5109 [multiple changes]
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
	switch.ads: for numeric switches, an optional equal sign is always
	allowed.

2009-04-09  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
	the case of file names is not significant.

From-SVN: r145834
2009-04-09 14:34:42 +02:00
Arnaud Charlet 5e781161ba New file.
From-SVN: r145833
2009-04-09 14:29:20 +02:00
Arnaud Charlet c75c4293c3 [multiple changes]
2009-04-09  Vincent Celier  <celier@adacore.com>

	* errout.adb: Remove dependency on package Style

	* style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
	moved to Stylesw.
	
	* stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
	Styleg.

	* errutil.adb, par.adb: Import Stylesw

2009-04-09  Arnaud Charlet  <charlet@adacore.com>

	* opt.ads: Fix typos.

2009-04-09  Robert Dewar  <dewar@adacore.com>

	* einfo.adb: Minor reformatting

From-SVN: r145832
2009-04-09 14:28:57 +02:00
Robert Dewar e7aea0fa3f Make-lang.in, [...]: Reorganize style units.
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
	units.

	* styleg-c.ads, styleg-c.adb: Removed, no longer used.

From-SVN: r145831
2009-04-09 14:22:41 +02:00
Arnaud Charlet 1c383b4cd4 [multiple changes]
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* g-comver.adb: Minor reformatting.

2009-04-09  Thomas Quinot  <quinot@adacore.com>

	* lib-load.ads (Load_Unit): Update documentation.

2009-04-09  Ed Schonberg  <schonberg@adacore.com>

	* lib-load.adb (Load_Unit): When loading the parent of a child unit
	named in a with_clause, retain the with_clause to preserve a
	limited_with indication.

From-SVN: r145829
2009-04-09 14:10:15 +02:00
Paolo Bonzini 4a77c72b6b i386.md (cmpcc): New.
2009-04-09  Paolo Bonzini  <bonzini@gnu.org>

        * config/i386/i386.md (cmpcc): New.
        * config/i386/sync.md (sync_compare_and_swap*): Set FLAGS_REG.
        (sync_compare_and_swap_cc*): Delete.

        * config/s390/s390.c (s390_compare_emitted): Remove.
        (s390_emit_compare): Handle MODE_CC s390_compare_op0 like
        s390_compare_emitted used to be handled.  Assert that modes match.
        (s390_emit_compare_and_swap): Use s390_emit_compare, do not
        refer to sync_compare_and_swap_ccsi.
        * config/s390/s390.h (s390_compare_emitted): Remove.
        * config/s390/s390.md (seq): Look for MODE_CC s390_compare_op0
        instead of s390_compare_emitted.
        (stack_protect_test, sync_compare_and_swap_cc): Set s390_compare_op0
        instead of s390_compare_emitted.
        * config/s390/s390.md (cmpcc): New.
        (sync_compare_and_swapqi, sync_compare_and_swaphi): Clobber
        CC_REGNUM, do not pretend it's set.
        (sync_compare_and_swap_cc*): Delete.
        * config/s390/predicates.md (cc_reg_operand): New.

        * expr.c (sync_compare_and_swap_cc): Delete.
        * optabs.h (sync_compare_and_swap_cc): Delete.
        * optabs.c (prepare_cmp_insn): Ignore which specific CCmode
        is being used with can_compare_p.
        (emit_cmp_and_jump_insn_1): Likewise when looking in the optab.
        (find_cc_set): New.
        (expand_bool_compare_and_swap): Do not use sync_compare_and_swap_cc,
        look for a MODE_CC set instead.  Use emit_store_flag.
        (expand_compare_and_swap_loop): Likewise, with some additional
        complication to avoid a force_reg when useless.  Use
        emit_cmp_and_jump_insns.
        * genopinit.c (optabs): Delete sync_compare_and_swap_cc.
        * doc/md.texi (sync_compare_and_swap_cc): Merge with
        sync_compare_and_swap documentation.

java:
2009-04-09  Paolo Bonzini  <bonzini@gnu.org>

        * builtins.c (compareAndSwapLong_builtin,
        compareAndSwapInt_builtin, compareAndSwapObject_builtin,
        VMSupportsCS8_builtin): Do not look at sync_compare_and_swap_cc.

From-SVN: r145825
2009-04-09 10:57:03 +00:00
Arnaud Charlet bf080c96e0 Minor reformatting.
From-SVN: r145824
2009-04-09 12:46:19 +02:00
Robert Dewar d7ba4df490 sem_ch7.adb, [...]: Code clean up...
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
	exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
	sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
	possible to replace an OR of two separate tests.

From-SVN: r145823
2009-04-09 12:45:44 +02:00
Robert Dewar 923e6ff331 binderr.adb, [...]: New circuitry for handling Maximum_Messages.
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* binderr.adb, errout.adb, errutil.adb: New circuitry for handling
	Maximum_Messages.
	
	* erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
	warning status as well.
	
	* opt.ads (Maximum_Messages): New name for Maximum_Errors.
	
	* switch-b.adb, switch-c.adb: Change name Maximum_Errors to
	Maximum_Messages.
	
	* bindusg.adb, usage.adb: Update line for -gnatm switch

	* gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
	-mnn binder switch.

	* sem_ch10.adb: Minor reformatting.

From-SVN: r145822
2009-04-09 12:38:54 +02:00
Arnaud Charlet beb50807ad [multiple changes]
2009-04-09  Bob Duff  <duff@adacore.com>

	* exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
	Set Sloc of generated nodes for calls to Undefer_Aborts and
	Save_Occurrence to No_Location, so the debugger ignores them and
	therefore does not jump back and forth when single stepping.

2009-04-09  Robert Dewar  <dewar@adacore.com>

	* switch-b.adb: Minor reformatting.

From-SVN: r145821
2009-04-09 12:29:07 +02:00
Robert Dewar a4100e5582 sem_aggr.adb, [...]: Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
	sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
	exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
	sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
	einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
	tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
	exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
	sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
	sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
	sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
	Reorganize einfo/sem_aux, moving routines from einfo to sem_aux

From-SVN: r145820
2009-04-09 12:27:10 +02:00
Robert Dewar f17889b313 exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.

	* atree.h: Add Elist26

	* gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
	backends.

From-SVN: r145818
2009-04-09 12:15:20 +02:00
Janus Weil 3070bab4c9 re PR fortran/36704 (Procedure pointer as function result)
2009-04-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36704
	* decl.c (add_hidden_procptr_result): New function for handling
	procedure pointer return values by adding a hidden result variable.
	(variable_decl,match_procedure_decl,gfc_match_function_decl,
	gfc_match_subroutine,gfc_match_end,attr_decl1): Handle procedure pointer
	return values.
	* parse.c (parse_interface): Add EXTERNAL attribute only after
	FUNCTION/SUBROUTINE declaration is complete.
	* primary.c (replace_hidden_procptr_result): New function for replacing
	function symbol by hidden result variable.
	(gfc_match_rvalue,match_variable): Replace symbol by hidden result
	variable.
	* resolve.c (resolve_contained_fntype,resolve_function,resolve_variable,
	resolve_symbol): Allow for procedure pointer function results.
	(resolve_fl_procedure): Conflict detection moved here from
	'check_conflict'.
	* symbol.c (gfc_check_function_type): Allow for procedure pointer
	function results.
	(check_conflict): Move some conflict detection to resolution stage.
	* trans-types.c (gfc_sym_type,gfc_get_function_type): Handle hidden
	result variables.


2009-04-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36704
	* gfortran.dg/external_procedures_1.f90: Modified.
	* gfortran.dg/proc_ptr_result_1.f90: New.
	* gfortran.dg/proc_ptr_result_2.f90: New.
	* gfortran.dg/proc_ptr_result_3.f90: New.

From-SVN: r145815
2009-04-09 11:39:09 +02:00
Arnaud Charlet b61ee1aa7b Minor reformatting.
From-SVN: r145813
2009-04-09 11:36:25 +02:00
Arnaud Charlet a8ea8a9d3b Minor reformatting.
From-SVN: r145812
2009-04-09 11:35:59 +02:00
Javier Miranda b16d9747ff exp_disp.adb (Export_DT): Addition of a new argument (Index)...
2009-04-09  Javier Miranda  <miranda@adacore.com>

	* exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
	retrieve from the Dispatch_Table_Wrappers list the external name.
	Addition of documentation.
	(Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
	used to export secondary dispatch tables (in the previous version of
	the frontend only primary dispatch tables were exported). Addition of
	documentation.
	(Import_DT): New subprogram (internal of Make_Tags). Used to import a
	dispatch table of a given tagged type. 
	(Make_Tags): Modified to import secondary dispatch tables.

	* sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
	(Constant_Redeclaration): Code cleanup.

	* einfo.ads (Dispatch_Table_Wrapper): Renamed to
	Dispatch_Table_Wrappers.  Update documentation.

	* einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
	Renamed to Dispatch_Table_Wrappers.

	* sem_util.adb (Collect_Interface_Components): Improve handling of
	private types.

	* atree.ads (Elist26, Set_Elist26): New subprograms

	* atree.adb (Elist26, Set_Elist26): New subprograms

From-SVN: r145811
2009-04-09 11:35:24 +02:00
Arnaud Charlet 59262ebb3e [multiple changes]
2009-04-09  Javier Miranda  <miranda@adacore.com>

	* sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
	(Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
	tagged types.

2009-04-09  Robert Dewar  <dewar@adacore.com>

	* s-direio.adb: Minor reformatting

	* exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String

From-SVN: r145808
2009-04-09 10:52:04 +02:00
Arnaud Charlet fa9693102a [multiple changes]
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases

2009-04-09  Pascal Obry  <obry@adacore.com>

	* a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
	s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
	a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
	a-filico.ads: Add some missing overriding keywords.

From-SVN: r145807
2009-04-09 10:45:55 +02:00
Jan Hubicka 0c0efb3346 except.c (find_prev_try): Break out from ....
* except.c (find_prev_try): Break out from ....
	(duplicate_eh_regions): ... here; properly update prev_try pointers
	when duplication part of tree.
	(dump_eh_tree): Improve dumping.
	(verify_eh_region): New.
	(verify_eh_tree): Use it.

From-SVN: r145805
2009-04-09 08:26:01 +00:00
Arnaud Charlet 3c25856afe [multiple changes]
2009-04-09  Pascal Obry  <obry@adacore.com>

	* a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
	a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
	a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
	reformatting.

2009-04-09  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
	missing overriding indicator if the new declaration is not seen as
	primitive.

From-SVN: r145804
2009-04-09 10:25:13 +02:00
Arnaud Charlet 76c597a1fc [multiple changes]
2009-04-09  Thomas Quinot  <quinot@adacore.com>

	* exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
	overflows in computation of bounds.

2009-04-09  Pascal Obry  <obry@adacore.com>

	* a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
	typos in comment.

From-SVN: r145803
2009-04-09 10:21:08 +02:00
Arnaud Charlet 95b89f1bf9 [multiple changes]
2009-04-09  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Check_Stream_Attribute): Check violation of
	restriction No_Streams

	* gnat_rm.texi: Clarify No_Streams restriction

	* g-socket.adb: Minor reformatting.

2009-04-09  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.

2009-04-09  Geert Bosch  <bosch@adacore.com>

	* exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
	(Set_Result): Likewise.
	(Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
	conversion, as required by RM 4.6(31).

From-SVN: r145801
2009-04-09 10:15:14 +02:00
Richard Guenther 22a65a54cc c-gimplify.c (c_gimplify_expr): Fix the invalid GENERIC &ARRAY addresses by adjusting their types and...
2009-04-09  Richard Guenther  <rguenther@suse.de>

	* c-gimplify.c (c_gimplify_expr): Fix the invalid GENERIC
	&ARRAY addresses by adjusting their types and prepending
	a conversion.
	* tree-cfg.c (verify_gimple_assign_single): Verify that
	addresses are correct.

	* gcc.dg/vect/vect-54.c: Make constant input data file-scope
	to prevent constant propagation.
	* gcc.dg/vect/vect-56.c: Likewise.
	* gcc.dg/vect/vect-58.c: Likewise.
	* gcc.dg/vect/vect-60.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-57.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-61.c: Likewise.
	* gcc.dg/tree-prof/stringop-2.c: Adjust expected outcome.

From-SVN: r145800
2009-04-09 08:07:31 +00:00
Richard Guenther f76968e6d5 tree-ssa-ccp.c (maybe_fold_stmt_addition): Move non-constant indices into an array reference if possible.
2009-04-09  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-ccp.c (maybe_fold_stmt_addition): Move non-constant
	indices into an array reference if possible.
	* tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
	Fold POINTER_PLUS_EXPR statements with invariant address.

	* gcc.dg/tree-ssa/ssa-ccp-25.c: New testcase.
	* gcc.dg/tree-ssa/ssa-ccp-26.c: Likewise.

From-SVN: r145799
2009-04-09 08:05:43 +00:00
Alan Modra c90c5fb5a5 re PR target/39634 (powerpc64 libgcc contains useless softfp functions)
PR target/39634
	* config.gcc (powerpc64-*-linux*): Always build biarch.

From-SVN: r145795
2009-04-09 14:17:05 +09:30