Commit Graph

81222 Commits

Author SHA1 Message Date
Vincent Celier
6bb81bc17c mlib-tgt-specific.adb, [...]: New files.
2007-04-20  Vincent Celier  <celier@adacore.com>

	* mlib-tgt-specific.adb, mlib-tgt-specific.ads,
	mlib-tgt-vms.adb, mlib-tgt-vms.ads: New files.

	* mlib-tgt.adb, mlib-tgt.ads, mlib-tgt-darwin.adb, 
	mlib-tgt-vxworks.adb, mlib-tgt-mingw.adb, mlib-tgt-lynxos.adb, 
	mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, 
	mlib-tgt-vms-ia64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, 
	mlib-tgt-hpux.adb, mlib-tgt-tru64.adb: Make a common body for package
	MLib.Tgt, containing the default versions
	of the exported subprograms. For each platforms, create a specific
	version of the body of new child package MLib.Tgt.Specific that contains
	only the bodies of subprograms that are different from the default.
	(Archive_Builder_Append_Options): New function

From-SVN: r125366
2007-06-06 12:15:24 +02:00
Arnaud Charlet
a538d22621 system-vxworks-sparcv9.ads, [...]: Document mapping between Ada and OS priorities.
2007-04-20  Arnaud Charlet  <charlet@adacore.com>

	* system-vxworks-sparcv9.ads, system-solaris-x86.ads, 
	system-irix-o32.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads, 
	system-lynxos-x86.ads, system-vxworks-m68k.ads, system-linux-x86.ads, 
	system-vxworks-mips.ads, system-vxworks-alpha.ads, 
	system-vxworks-x86.ads, system-linux-ppc.ads, system-mingw.ads, 
	system-vms-zcx.ads, system-darwin-ppc.ads, system-vxworks-ppc.ads, 
	system-interix.ads, system-linux-hppa.ads, system-tru64.ads, 
	system-hpux.ads, system-irix-n32.ads, system-solaris-sparc.ads, 
	system-solaris-sparcv9.ads, system-vms.ads, system.ads,
	system-vms_64.ads, system-hpux-ia64.ads, system-linux-x86_64.ads,
	system-linux-ia64.ads: Document mapping between Ada and OS priorities.
	This patch changes the largest non-binary modulus from 2**31-1 to
	2**32-1.
	(Compiler_System_Version): Removed, no longer used.
	Clean up system files by removing flags only used on a single target.
	Also remove obsolete flags, only used during bootstrap from system.ads
	(Address): Add a pragma Preelaborable_Initialization.

	* system-aix.ads:  Ditto.
	(GCC_ZCX_Support): Set to true.
	Update priority range on AIX and map Ada priorities to target
	priorities appropriately for different scheduling policies.

	* ttypes.ads: set largest non-binary modulus from 2**31-1 to 2**32-1

From-SVN: r125365
2007-06-06 12:15:13 +02:00
Arnaud Charlet
dae22b5339 s-taprop-vms.adb, [...] (Timed_Delay, [...]): Register the base time when entering this routine to detect a backward clock...
2007-04-20  Arnaud Charlet  <charlet@adacore.com>

	* s-taprop-vms.adb, s-taprop-hpux-dce.adb, s-taprop-vxworks.adb, 
	s-osprim-posix.adb, s-taprop-posix.adb, s-osprim-vxworks.adb, 
	s-taprop-solaris.adb, s-osprim-solaris.adb, s-taprop-dummy.adb, 
	s-osprim-unix.adb, s-osinte-freebsd.adb, s-osinte-freebsd.ads, 
	s-osinte-lynxos.adb, s-osinte-lynxos.ads, s-taprop-tru64.adb, 
	s-taprop-lynxos.adb, s-taprop-irix.adb, s-osinte-tru64.adb, 
	s-osinte-tru64.ads, s-taprop-linux.adb, s-parame.ads, 
	s-parame-vms-alpha.ads, s-parame-vms-ia64.ads, s-parame-hpux.ads, 
	s-parame-vms-restrict.ads, s-parame-ae653.ads, s-parame-vxworks.ads, 
	s-taprop-mingw.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos-3.adb,
        s-osprim-mingw.adb (Timed_Delay, Timed_Sleep): Register the base
	time when entering this routine to detect a backward clock setting
	(manual setting or DST adjustment), to avoid waiting for a longer delay
	than needed.
	(Time_Duration, To_Timeval, struct_timeval): Removed when not relevant.
	Remove handling of deferred priority change, and replace by setting the
	task priority directly, as required by AI-188.
	Update comments.
	(Max_Task_Image_Length): New constant.
	Replace Warnings (Off) by Unreferenced pragma, cleaner.
	(Dynamic_Priority_Support): Removed, no longer needed.
	(Poll_Base_Priority_Change): Ditto.
	(Set_Ceiling): Add this procedure to change the ceiling priority
	associated to a lock. This is a dummy implementation because dynamic
	priority ceilings are not supported by the underlying system.

	* a-dynpri.adb (Set_Priority): Take into account case where Target is
	accepting a RV with its priority boosted.
	Remove handling of deferred priority change, and replace by setting the
	task priority directly, as required by AI-188.

	* s-taenca.adb (Try_To_Cancel_Entry_Call): Remove special case for
	Succeeded = True.
	Remove handling of deferred priority change, and replace by setting the
	task priority directly, as required by AI-188.
	(Wait_For_Completion, Wait_For_Call, Timed_Selective_Wait): Change state
	of Self_Id earlier.

	* s-tasini.ads, s-tasini.adb (Wakeup_Entry_Caller): Relax assertion.
	(Poll_Base_Priority_Change): Removed.
	Code clean up: use SSL.Current_Target_Exception.

	* s-tasren.adb (Task_Count): Call Yield to let a chance to other tasks
	to run as this is a potentially dispatching point.
	(Call_Synchronous): Use Local_Defer_Abort.
	(Callable): Relax assertion.
	(Selective_Wait): Relax assertion in case abort is not allowed.
	Remove handling of deferred priority change, and replace by setting the
	task priority directly, as required by AI-188.

	* s-tasuti.adb (Make_Passive): Adjust assertions.
	Remove handling of deferred priority change, and replace by setting the
	task priority directly, as required by AI-188.

From-SVN: r125364
2007-06-06 12:14:59 +02:00
Hristian Kirtchev
984d7dd399 2007-04-20 Hristian Kirtchev <kirtchev@adacore.com>
* a-calend.ads, a-calend.adb, a-calend-vms.ads, a-calend-vms.adb ("-"
	(Time, Time)): Use To_Relative_Time rather than manual calculation to
	express the bounds of Duration as Time. Raise Time_Error when the
	result is greater or equal to the higher bound of Duration (on the
	margin case).
	("+" (Time, Duration)): Reorder code. Remove the declaration of constant
	Ada_High_And_Leaps.
	("-" (Time, Duration)): Reorder code. Remove the declaration of constant
	Ada_High_And_Leaps.
	("-" (Time, Time)): Reorder code.
	(All_Leap_Seconds): Removed.
	(Arithmetic_Operations.Add): Remove sign related kludge.
	(Arithmetic_Operations.Difference): Control the leaps seconds processing
	with flag Leap_Support.
	(Arithmetic_Operations.Subtract): Remove sign related kludge.
	(Check_Within_Time_Bounds): New procedure.
	(Clock): Control the leap seconds processing with flag Leap_Support.
	(Cumulative_Leap_Seconds): Assert that the target supports leap seconds.
	(Formatting_Operations.Split): Control the leap seconds processing with
	flag Leap_Support.
	(Formatting_Operations.Time_Of): Control the leaps seconds processing
	with flag Leap_Support. Adjust the year, month and day (if applicable)
	when the value of day seconds designates a new day.
	(Split): Use parameter associations for better readability. Integrate
	flag Is_Ada_05.
	(Time_Of): Use parameter associations for better readability. Integrate
	flag Is_Ada_05.

	* a-calfor.adb (Split): Use parameter associations for better
	readability. Integrate flag Is_Ada_05.
	(Time_Of): Remove flag Leap_Checks. Use parameter associations for
	better readability. Integrate flag Is_Ada_05.

From-SVN: r125363
2007-06-06 12:14:46 +02:00
Thomas Quinot
f936abf3bd a-intnam-aix.ads: Adjust comment to account for SIGADAABORT change (SIGEMT is now used instead of...
2007-04-20  Thomas Quinot  <quinot@adacore.com>
	    Arnaud Charlet  <charlet@adacore.com>

	* a-intnam-aix.ads: 
	Adjust comment to account for SIGADAABORT change (SIGEMT is now used
	instead of SIGTERM on AIX).

	* s-osinte-aix.ads (Linker_Options): Use -pthread instead of -lpthreads.
	(Time_Slice_Supported): Set to True.
	use SIGEMT instead of SIGTERM as SIGADAABORT.

From-SVN: r125362
2007-06-06 12:14:35 +02:00
Bob Duff
11efec4da2 g-expect-vms.adb:
2007-04-20  Bob Duff  <duff@adacore.com>

	* g-expect-vms.adb: 
	(Send_Signal, Close): Raise Invalid_Process if the process id is invalid.
	* g-expect.ads, g-expect.adb (Send): Avoid useless copy of the string.
	(Send_Signal, Close): Raise Invalid_Process if the process id is
	invalid.
	(Pattern_Matcher_Access): Is now a general access type to be able to
	use aliased string.

From-SVN: r125361
2007-06-06 12:14:25 +02:00
Robert Dewar
30681738f9 g-string.adb, [...]: Replace GNAT.xxx by System.xxx when appropriate.
2007-04-20  Robert Dewar  <dewar@adacore.com>

	* g-string.adb, s-proinf-irix-athread.adb, s-gloloc-mingw.adb,
	s-tfsetr-default.adb, gnatfind.adb, gnatxref.adb, gprep.adb,
	g-regexp.adb, g-regexp.ads, g-regpat.ads, g-tasloc.adb, g-tasloc.ads,
	output.adb, switch-m.ads, tree_in.ads, tree_io.ads, indepsw.ads,
	g-utf_32.adb, g-utf_32.ads, a-wichun.adb, a-wichun.ads, a-zchuni.adb,
	a-zchuni.ads: Replace GNAT.xxx by System.xxx when appropriate.

	* s-utf_32.adb, s-utf_32.ads, s-os_lib.adb, s-os_lib.ads, s-regexp.adb,
	s-regexp.ads, s-regpat.adb, s-regpat.ads, s-string.adb, s-string.ads,
	s-tasloc.adb, s-tasloc.ads: New files.

From-SVN: r125360
2007-06-06 12:14:14 +02:00
Robert Dewar
cecaf88a61 a-taster.adb, [...]: Replace Unchecked_* by Ada.Unchecked_*
2007-04-20  Robert Dewar  <dewar@adacore.com>

	* a-taster.adb, s-osinte-hpux.ads, s-osinte-solaris-posix.ads,
	s-osinte-irix.ads, s-interr-sigaction.adb, s-mastop-irix.adb,
	s-osinte-hpux-dce.ads, s-osinte-interix.ads, s-osinte-solaris.ads,
	s-taspri-solaris.ads, s-inmaop-vms.adb, s-interr-vms.adb,
	s-mastop-vms.adb, s-osinte-vms.ads, s-tpopde-vms.adb,
	s-osinte-mingw.ads, s-interr-vxworks.adb, i-cstrea-vms.adb,
	a-diocst.adb, a-direio.adb, a-interr.adb, a-sequio.adb, a-siocst.adb,
	a-ssicst.adb, a-storio.adb, a-ststio.adb, a-stwima.adb, a-tasatt.adb,
	a-taside.adb, a-tiocst.adb, a-witeio.adb, a-wtcstr.adb, g-crc32.adb,
	g-dirope.adb, g-dyntab.adb, g-memdum.adb, g-regexp.adb, g-spipat.adb,
	g-spitbo.adb, g-string.adb, g-string.ads, g-table.adb, g-thread.adb,
	i-cobol.adb, i-cpoint.adb, i-cstrea.adb, i-cstrin.adb, i-pacdec.adb,
	s-addima.adb, s-arit64.adb, s-auxdec.adb, s-auxdec.ads,
	s-auxdec-vms_64.ads, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
	s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
	s-direio.adb, s-fileio.adb, s-finimp.ads, s-geveop.adb, s-imgenu.adb,
	s-pack03.adb, s-pack05.adb, s-pack06.adb, s-pack07.adb, s-pack09.adb,
	s-pack10.adb, s-pack11.adb, s-pack12.adb, s-pack13.adb, s-pack14.adb,
 	s-pack15.adb, s-pack17.adb, s-pack18.adb, s-pack19.adb, s-pack20.adb,
	s-pack21.adb, s-pack22.adb, s-pack23.adb, s-pack24.adb, s-pack25.adb,
	s-pack26.adb, s-pack27.adb, s-pack28.adb, s-pack29.adb, s-pack30.adb,
	s-pack31.adb, s-pack33.adb, s-pack34.adb, s-pack35.adb, s-pack36.adb,
	s-pack37.adb, s-pack38.adb, s-pack39.adb, s-pack40.adb, s-pack41.adb,
	s-pack42.adb, s-pack43.adb, s-pack44.adb, s-pack45.adb, s-pack46.adb,
	s-pack47.adb, s-pack48.adb, s-pack49.adb, s-pack50.adb, s-pack51.adb,
	s-pack52.adb, s-pack53.adb, s-pack54.adb, s-pack55.adb, s-pack56.adb,
	s-pack57.adb, s-pack58.adb, s-pack59.adb, s-pack60.adb, s-pack61.adb,
	s-pack62.adb, s-pack63.adb, s-pooloc.adb, s-poosiz.adb, s-scaval.adb,
	s-sequio.adb, s-shasto.adb, s-stalib.ads, s-stratt.adb, s-strcom.adb,
	s-taasde.adb, s-tasdeb.adb, s-tasuti.ads, s-tataat.ads, s-tpoben.ads,
	s-valenu.adb, s-widenu.adb, s-wwdenu.adb, s-addope.adb, a-stzmap.adb,
	a-ztcstr.adb, a-ztexio.adb, s-osinte-linux-hppa.ads: Replace
	Unchecked_* by Ada.Unchecked_*

From-SVN: r125359
2007-06-06 12:13:44 +02:00
Thomas Quinot
47a5501df9 g-soccon-freebsd.ads, [...]: Add new constant Thread_Blocking_IO...
2007-04-20  Thomas Quinot  <quinot@adacore.com>
	    Bob Duff  <duff@adacore.com>

        * g-soccon-freebsd.ads, g-soccon-vxworks.ads:,
	g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads, 
	g-soccon-solaris.ads, g-soccon-vms.ads, g-soccon-tru64.ads:  Add new
	constant Thread_Blocking_IO, always True by default, set False
	on a per-runtime basis.
	(Need_Netdb_Buffer): New constant.

	* g-stheme.adb, g-sttsne.ads, g-sttsne-locking.ads,
	g-sttsne-locking.adb, g-sttsne-vxworks.ads, g-sttsne-vxworks.adb: New
	files.

	* g-socthi-vxworks.ads, g-socthi-vxworks.adb,
	g-socthi-vms.ads, g-socthi-vms.adb (Safe_Gethostbyname,
	Safe_Gethostbyaddr, Safe_Getservbyname, Safe_Getservbyport): Use new
	child package Task_Safe_NetDB
	(Host_Error_Messages): Add stub body.
	(GNAT.Sockets.Thin.Signalling_Fds): New procedure Close.

	* g-soccon-mingw.ads: Add Windows-specific constants.
	(Need_Netdb_Buffer): New constant.
	(GNAT.Sockets.Thin.C_Inet_Addr, Windows version): Remove useless Ada
	wrapper and import inet_addr(3) from the standard sockets library
	directly instead.
	(In_Addr): Add alignment clause.
	(GNAT.Sockets.Thin.Signalling_Fds): New procedure Close.

From-SVN: r125358
2007-06-06 12:13:25 +02:00
Thomas Neumann
9415ab7da8 i386.c (enum pta_flags): Move out of struct scope...
* config/i386/i386.c (enum pta_flags): Move out of struct scope...
	(struct pta): ...from here. Change flags to unsigned to avoid excessive
	casting (as it is used as a bit mask).
	(override_options): Add casts according to the coding convenventions.
	(x86_64_elf_unique_section): Likewise.
	(examine_argument): Avoid using C++ keywords as variable names.
	(construct_container): Likewise.
	(legitimize_pic_address): Likewise.
	(get_dllimport_decl): Cast according to the coding conventions. Use
	type safe memory macros.
	(legitimize_address): Cast according to the coding conventions.
	(emit_i387_cw_initialization): Corrected the type of slot to enum
	ix86_stack_slot.
	(ix86_init_machine_status): Use type safe memory macros.
	(bdesc_pcmpestr): Use UNKNOWN instead of integer 0.
	(bdesc_pcmpistr): Likewise.
	(bdesc_crc32): Likewise.
	(bdesc_sse_3arg): Likewise.
	(bdesc_2arg): Likewise.
	(bdesc_1arg): Likewise.
	(ix86_expand_sse_pcmpestr): Cast according to the coding conventions.
	(ix86_expand_sse_pcmpistr): Likewise.
	(ix86_expand_vec_set_builtin): Use EXPAND_NORMAL instead of integer 0.
	(ix86_builtin_vectorized_function): Change the type of fn to unsigned
	int to match the langhook definition.
	(ix86_builtin_conversion): Change the type of code to unsigned init to
	match the langhook definition.
	(ix86_preferred_reload_class): Avoid using C++ keywords as variable
	names.
	(ix86_preferred_output_reload_class): Likewise.
	(ix86_cannot_change_mode_class): Likewise.
	(ix86_memory_move_cost): Likewise.
	(ix86_rtx_costs): Cast the outer_code parameter to enum rtx_code to
	avoid excessive casting later on.
	(x86_output_mi_thunk): Avoid using C++ keywords as variable names.

From-SVN: r125357
2007-06-06 08:02:56 +00:00
Uros Bizjak
f28eb39cee sse.md (sse4_2_pcmpestr_cconly): Prefer pcmpestrm as flags setting insn.
* config/i386/sse.md (sse4_2_pcmpestr_cconly): Prefer pcmpestrm
	as flags setting insn.
	(sse4_2_pcmpistr_cconly): Prefer pcmpistrm as flags setting insn.

	* config/i386/i386.md (UNSPEC_ROUNDP, UNSPEC_ROUNDS): Remove.
	(UNSPEC_ROUND): New.
	("sse4_1_round<mode>2"): New insn pattern.
	("rint<mode>2"): Expand using "sse4_1_round<mode>2" pattern for
	SSE4.1 targets.
	("floor<mode>2"): Rename from floordf2 and floorsf2.  Macroize
	expander using SSEMODEF mode macro.  Expand using
	"sse4_1_round<mode>2" pattern for SSE4.1 targets.
	("ceil<mode>2"): Rename from ceildf2 and ceilsf2.  Macroize
	expander using SSEMODEF mode macro.  Expand using
	"sse4_1_round<mode>2" pattern for SSE4.1 targets.
	("btrunc<mode>2"): Rename from btruncdf2 and btruncsf2.  Macroize
	expander using SSEMODEF mode macro.  Expand using
	"sse4_1_round<mode>2" pattern for SSE4.1 targets.
	* config/i386/sse.md ("sse4_1_roundpd", "sse4_1_roundps"): Use
	UNSPEC_ROUND instead of UNSPEC_ROUNDP.
	("sse4_1_roundsd", "sse4_1_roundss"): Use UNSPEC_ROUND instead of
	UNSPEC_ROUNDS.

From-SVN: r125356
2007-06-06 08:53:29 +02:00
Jan Sjodin
69f2880c76 lambda.h (build_linear_expr): New.
* lambda.h (build_linear_expr): New.
	* lambda-code.c (lbv_to_gcc_expression, lle_to_gcc_expression): 
	Use build_linear_expr, call fold and force_gimple_operand.
	(lambda_loopnest_to_gcc_loopnest): Check that there is
	something to insert.
	* testsuite/gcc.dg/tree-ssa/ltrans-6.c: New.


Co-Authored-By: Sebastian Pop <sebpop@gmail.com>

From-SVN: r125355
2007-06-06 06:08:58 +00:00
Jerry DeLisle
518a0b7838 re PR fortran/18923 (segfault after subroutine name confusion)
2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR testsuite/18923
	* gfortran.dg/invalid_contains_1.f90: New test.
	* gfortran.dg/invalid_contains_2.f90: New test.

From-SVN: r125353
2007-06-06 01:21:29 +00:00
Jerry DeLisle
766a8f6262 re PR testsuite/32057 (Random failure on gfortran.dg/secnds.f)
2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR testsuite/32057
	* gfortran.dg/secnds.f: Update test to avoid roundoff errors and
	midnight issues.

From-SVN: r125352
2007-06-06 00:54:30 +00:00
GCC Administrator
ee8e242435 Daily bump.
From-SVN: r125350
2007-06-06 00:16:55 +00:00
Manuel López-Ibáñez
ebd003c09b re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
2007-06-05  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	PR testsuite/25241
testsuite/
	* gcc.dg/invalid-call-1.c: Use dg-warning to match the warning and
	dg-message to match de note.
	* gcc.dg/pr26570.c: Use dg-message for a note.
	* gcc.dg/pr29254.c: Use dg-message for generic output and use
	dg-error instead of dg-warning because of -Werror.
	* gcc.dg/glibc-uclibc-1.c: Use dg-message for output that is
	neither an error, nor a warning.
	* gcc.dg/glibc-uclibc-2.c: Likewise
	* gcc.dg/cpp/19940712-1.c: Likewise.

From-SVN: r125347
2007-06-05 22:30:24 +00:00
Joerg Wunsch
f7fd775f02 re PR preprocessor/23479 (Implement binary constants with a "0b" prefix)
2007-06-05  Joerg Wunsch  <j.gnu@uriah.heep.sax.de>

	PR preprocessor/23479
gcc/
	* doc/extend.texi: Document the 0b-prefixed binary integer
	constant extension.

libcpp/
	* expr.c (cpp_classify_number): Implement 0b-prefixed binary
	integer constants.
	(append_digit): Likewise.
	* include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed
	binary integer constants.

testsuite/
	* testsuite/gcc.dg/binary-constants-1.c: Add test suites for
	the 0b-prefixed binary integer constants.
	* testsuite/gcc.dg/binary-constants-2.c: Ditto.
	* testsuite/gcc.dg/binary-constants-3.c: Ditto.
	* testsuite/gcc.dg/binary-constants-4.c: Ditto.

From-SVN: r125346
2007-06-05 22:25:27 +00:00
Uros Bizjak
1a5f8b894c re PR tree-optimization/32215 (ICE in supportable_narrowing_operation, at tree-vectorizer.c:1907)
PR tree-optimization/32215
        * tree-vectorizer.c (supportable_widening_operation): Return false
        for unsupported FIX_TRUNC_EXPR tree code.
        (supportable_narrowing_operation): Ditto for FLOAT_EXPR tree code.

From-SVN: r125343
2007-06-05 22:23:58 +02:00
Jerry DeLisle
de8936774a re PR fortran/18923 (segfault after subroutine name confusion)
2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/18923
	* parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
	for ST_FUNCTION since it is called in reject_statement.
	(parse_contained): If error, loop back after reject_statement and try
	again.  Free the namespace if an error occured.

From-SVN: r125342
2007-06-05 20:23:44 +00:00
Nathan Froyd
52ff33d0eb rs6000.h (FIXED_SCRATCH): Use r0 as a scratch register on SPE targets.
* config/rs6000/rs6000.h (FIXED_SCRATCH): Use r0 as a scratch
	register on SPE targets.  Change documentation to reflect
	reality.
	* config/rs6000/rs6000.c (rs6000_conditional_register_usage):
	Change FIXED_SCRATCH to 14 and document why we're keeping r14
	out of the register allocation pool.
	(rs6000_reg_live_or_pic_offset_p): New function.
	(rs6000_emit_prologue): Move the actual saving of LR up to free
	r0 for holding r11.  Split saving of SPE 64-bit registers into
	its own case.  Ensure that offsets will always be in-range for
	'evstdd' by using r11 as a scratch register to point at the start
	of the SPE save area.  Save r11 if necessary, as it is the static
	chain register.
	(rs6000_emit_epilogue): Split restoring of SPE 64-bit registers
	into its own case.  Ensure that offsets will always be in-range
	for 'evldd' by using r11 as a scratch register to point at the
	start of the SPE save area.  Also adjust r11 when restoring
	the stack pointer to compensate for pre-loading r11.

From-SVN: r125340
2007-06-05 19:46:23 +00:00
Simon Baldwin
b08f991d91 decl.c (grokdeclarator): Readability change.
* decl.c (grokdeclarator): Readability change.  Moved case labels into
	direct switch statement scope.

From-SVN: r125339
2007-06-05 18:29:42 +00:00
Thomas Neumann
7fc40a9c9c typo
From-SVN: r125338
2007-06-05 16:16:23 +00:00
Thomas Neumann
ae50c0cbc8 cfg.c (init_flow): Use type safe memory macros.
* cfg.c (init_flow): Use type safe memory macros.
	(alloc_block): Likewise.
	(unchecked_make_edge): Likewise.
	(dump_flow_info): Avoid using C++ keywords as variable names.
	(copy_original_table_clear): Cast according to the coding conventions.
	(copy_original_table_set): Likewise.
	* cfgexpand (label_rtx_for_bb): Likewise.
	(expand_gimüle_basic_block): Likewise.
	* cfghooks.c (dump_bb): Likewise.
	(lv_adjust_loop_header_phi): Avoid using C++ keywords as variable names.
	(lv_add_condition_to_bb): Likewise.
	* cfglayout (relink_block_chain): Cast according to the coding
	conventions.
	(fixup_reorder_chain): Likewise.
	(fixup_fallthru_exit_predecessor): Likewise.
	* cfgloop.c (glb_enum_p): Likewise.
	(get_exit_description): Likewise.
	(dump_recorded_exit): Likewise.
	* cfgloop.h (enum loop_estimation): Move out of struct scope...
	(struct loop): ... from here.
	* cfgloopmanip (rpe_enum_p): Cast according to the coding conventions.
	* cfgrtl.c (rtl_create_basic_block): Likewise.
	(rtl_split_block): Likewise.
	(rtl_dump_bb): Likewise.
	(cfg_layout_split_block): Likewise.
	(init_rtl_bb_info): Use typesafe memory macros.

	* graphds.h (struct graph_edge): Renamed edge to graph_edge.
	* graphds.h: Updated all usages of edge to graph_edge.
	* graphds.c: Likewise.
	* cfgloopanal.c: Likewise.

From-SVN: r125336
2007-06-05 15:41:04 +00:00
Ian Lance Taylor
3fe5bcaf11 tree-vrp.c (compare_values_warnv): Check TREE_NO_WARNING on a PLUS_EXPR or MINUS_EXPR node before setting...
./:	* tree-vrp.c (compare_values_warnv): Check TREE_NO_WARNING on a
	PLUS_EXPR or MINUS_EXPR node before setting *strict_overflow_p.
	(extract_range_from_assert): Set TREE_NO_WARNING when creating an
	expression.
	(test_for_singularity): Likewise.
testsuite/:
	* gcc.dg/Wstrict-overflow-19.c: New test.

From-SVN: r125334
2007-06-05 13:18:22 +00:00
H.J. Lu
a176d60f9d constraints.md ("Y2"): Replaced by ...
2007-06-05  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/constraints.md ("Y2"): Replaced by ...
	("Yt"): This.
	* config/i386/i386.md: Likewise.
	* config/i386/mmx.md: Likewise.
	* config/i386/sse.md: Likewise.

From-SVN: r125333
2007-06-05 05:54:41 -07:00
H.J. Lu
c3b9a8d688 constraints.md ("z"): Replaced by ...
2007-06-05  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/constraints.md ("z"): Replaced by ...
	("Y0"): This.
	* config/i386/sse.md (sse4_1_blendvpd): Likewise.
	(sse4_1_blendvps): Likewise.
	(sse4_1_pblendvb): Likewise.
	(sse4_2_pcmpestr): Likewise.
	(sse4_2_pcmpestrm): Likewise.
	(sse4_2_pcmpestr_cconly): Likewise.
	(sse4_2_pcmpistr): Likewise.
	(sse4_2_pcmpistrm): Likewise.
	(sse4_2_pcmpistr_cconly): Likewise.

Move testsuite ChangeLog to testsuite/ChangeLog.

From-SVN: r125332
2007-06-05 05:53:27 -07:00
Razya Ladelsky
b8ff1d5bbb matrix-reorg.c (transform_access_sites): Fix computation.
2007-06-05  Razya Ladelsky  <razya@il.ibm.com>

        * matrix-reorg.c (transform_access_sites): Fix computation.
        (transform_allocation_sites): Same.
        * testsuite/gcc.dg/matrix/matrix-6.c: Remove conversion.

From-SVN: r125331
2007-06-05 10:48:33 +00:00
Uros Bizjak
cc55c4b074 i386.c (override_options): Use TARGET_SUBTARGET32_ISA_DEFAULT to select default ix86_isa_flags.
* config/i386/i386.c (override_options): Use
	TARGET_SUBTARGET32_ISA_DEFAULT to select default ix86_isa_flags.

From-SVN: r125328
2007-06-05 08:44:17 +02:00
Uros Bizjak
cb4828955f md (reg_not_xmm0_operand): New predicate.
* config/i386/predicates/md (reg_not_xmm0_operand): New predicate.
	(nonimm_not_xmm0_operand): Ditto.
	* config/i386/sse.md ("sse4_1_blendvpd"): Use "reg_not_xmm0_operand"
	as operand[0] and operand[1] predicate.  Use "nonimm_not_xmm0_operand"
	as operand[2] predicate.  Require "z" class XMM register for
	operand[3].  Adjust asm template.
	("sse4_1_blendvpd"): Ditto.
	("sse4_1_pblendvb"): Ditto.
 	* config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Do not
	force op2 into xmm0 register for variable blend instructions.

From-SVN: r125327
2007-06-05 07:35:39 +02:00
GCC Administrator
2eaad86a2c Daily bump.
From-SVN: r125325
2007-06-05 00:17:15 +00:00
Tom Tromey
7114359fb6 c-tree.h (start_enum): Update.
* c-tree.h (start_enum): Update.
	(build_enumerator): Likewise.
	* c-decl.c (enum_next_value): Removed.
	(enum_overflow): Likewise.
	(start_enum): Add c_enum_contents argument.  Don't use globals.
	(build_enumerator): Likewise.
	* c-tree.h (struct c_enum_contents): New struct.

From-SVN: r125322
2007-06-04 23:19:19 +00:00
Tom Tromey
762f7d9d8a * c-common.c (c_common_get_alias_set): Fix indentation.
From-SVN: r125321
2007-06-04 22:13:40 +00:00
Ian Lance Taylor
9a46cc164c tree-vrp.c (adjust_range_with_scev): When loop is not expected to overflow, reduce overflow infinity to regular infinity.
./:	* tree-vrp.c (adjust_range_with_scev): When loop is not expected
	to overflow, reduce overflow infinity to regular infinity.
	(vrp_var_may_overflow): New static function.
	(vrp_visit_phi_node): Check vrp_var_may_overflow.
testsuite/:
	* gcc.dg/Wstrict-overflow-18.c: New test.

From-SVN: r125319
2007-06-04 21:56:10 +00:00
Kazu Hirata
b9d493510e * stor-layout.c (layout_type): Remove duplicate code.
From-SVN: r125318
2007-06-04 21:29:01 +00:00
Manuel López-Ibáñez
da04dcb60a re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
2007-06-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	PR testsuite/25241
testsuite/
	* gcc.dg/cpp/mi1.c: Use dg-message for output that is not an error.
	* gcc.dg/cpp/mi5.c: Likewise.
	* gcc.dg/cpp/mi7.c: Likewise.

From-SVN: r125317
2007-06-04 21:11:51 +00:00
Lee Millward
8374844f75 trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust to operate on a stack allocated array for the intrinsic arguments...
2007-06-04 Lee Millward <lee.millward@codesourcery.com>

	* trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
	to operate on a stack allocated array for the intrinsic arguments
	instead of creating a TREE_LIST. Add two new parameters for the
	array and the number of elements. Update all callers to allocate
	an array of the correct length to pass in. Update comment.
	(gfc_intrinsic_argument_list_length): New function.
	(gfc_conv_intrinsic_mnimax): Call it.
	(gfc_conv_intrinsic_merge): Likewise.
	(gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
	constructors.
	(gfc_conv_intrinsic_cmplx): Likewise.
	(gfc_conv_intrinsic_ctime): Likewise.
	(gfc_covn_intrinsic_fdate): Likewise.
	(gfc_conv_intrinsic_ttynam): Likewise.
	(gfc_conv_intrinsic_ishftc): Likewise.
	(gfc_conv_intrinsic_index): Likewise.
	(gfc_conv_intrinsic_scan): Likewise.
	(gfc_conv_intrinsic_verify): Likewise.
	(gfc_conv_intrinsic_trim): Likewise.
	(gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
	(gfc_conv_intrinsic_exponent): Likewise.
	(gfc_conv_intrinsic_bound): Likewise.
	(gfc_conv_intrinsic_abs): Likewise.
	(gfc_conv_intrinsic_mod): Likewise.
	(gfc_conv_intrinsic_sign): Likewise.
	(gfc_conv_intrinsic_len): Likewise.
	(gfc_conv_intrinsic_adjust): Likewise.
	(gfc_conv_intrinsic_si_kind): Likewise.

From-SVN: r125316
2007-06-04 20:59:49 +00:00
Paolo Carlini
cab203bf5d call.c (convert_like_real): Remove pointless code.
2007-06-04  Paolo Carlini  <pcarlini@suse.de>

	* call.c (convert_like_real): Remove pointless code.

From-SVN: r125315
2007-06-04 20:40:43 +00:00
Uros Bizjak
8de7ef2a87 re PR c/32191 (ICE with complex __float128)
PR c/32191
        * gcc/c-common.c (c_define_builtins): Call targetm.init_builtins ()
        before build_common_builtin_nodes ().

testsuite/ChangeLog:

        PR c/32191
        * gcc.dg/pr32191.c: New test.

From-SVN: r125314
2007-06-04 22:07:37 +02:00
Steve Ellcey
bd075cf298 * trans-array.c (gfc_conv_array_parameter): Initialize tmp.
From-SVN: r125313
2007-06-04 16:00:00 +00:00
Steve Ellcey
15eb3a2e59 re PR target/31733 (ICE in rtl_verify_flow_info, at cfgrtl.c:2050: {return_internal} (nil))
PR target/31733
	* cfgrtl.c (rtl_verify_flow_info): Skip notes when looking for barrier.

From-SVN: r125312
2007-06-04 15:58:12 +00:00
Matthias Klose
b1d849c109 acinclude.m4: Accept GCJ and JIKES.
2007-06-04  Matthias Klose  <doko@ubuntu.com>

        * m4/acinclude.m4: Accept GCJ and JIKES.
        * configure: Regenerate.

From-SVN: r125310
2007-06-04 10:05:52 +00:00
Olivier Hainque
1a075af13d mh-ppc-aix: Add default ADAFLAGS to BOOT_ADAFLAGS.
* mh-ppc-aix: Add default ADAFLAGS to BOOT_ADAFLAGS.

From-SVN: r125309
2007-06-04 07:48:28 +00:00
Jan Hubicka
c443019c4d tree-predcom.c (replace_ref_with, [...]): Call build_gimple_modify_stmt instead of _stat version.
* tree-predcom.c (replace_ref_with, initialize_root_vars_lm,
	reassociate_to_the_same_stmt): Call build_gimple_modify_stmt
	instead of _stat version.

From-SVN: r125308
2007-06-04 07:20:01 +00:00
GCC Administrator
73a92c473a Daily bump.
From-SVN: r125305
2007-06-04 00:17:10 +00:00
Matthias Klose
e1bea0c068 libjava/classpath/ChangeLog.gcj:
2007-05-31  Matthias Klose  <doko@ubuntu.com>

        * javax/management/NotificationBroadcasterSupport.java
        (getNotificationInfo): Add cast.
        * native/jni/qt-peer/Makefile.am (AM_CXXFLAGS): Add libstdc++ include
        directories.
        * native/jni/qt-peer/Makefile.in: Regenerate.

libjava/ChangeLog:

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        * java/io/natFileWin32.cc (setFilePermissions): New (stub only).
        _access: Handle EXEC query, stub only.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        Merged from classpath:
        * gnu/java/nio/SelectorProviderImpl.java: Whitespace merge.
        * java/lang/System.java(inheritedChannel): New.
        * java/lang/Character.java: Remove stray`;'.
        * java/net/MulticastSocket.java: Merged.
        * java/text/DateFormatSymbols.java(getInstance): New, comment updates.
        * java/text/Collator.java(getInstance): Merged.
        * java/util/Calendar.java: New attributes ALL_STYLES, SHORT, LONG.
        getDisplayName, getDisplayNames: New.
        * java/util/logging/Logger.java: Merged.
        * Regenerate .class and .h files.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        * java/io/File.java: Merge with classpath-0.95, new method
        setFilePermissions, new attribute EXEC.
        * java/io/natFilePosix.cc (setFilePermissions): New.
        _access: Handle EXEC query.
        * classpath/lib/java/io/File.class, java/io/File.h: Regenerate.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        Imported GNU Classpath 0.95.

        * classpath/Makefile.in,
        classpath/native/jni/midi-dssi/Makefile.in,
        classpath/native/jni/classpath/Makefile.in,
        classpath/native/jni/Makefile.in,
        classpath/native/jni/gconf-peer/Makefile.in,
        classpath/native/jni/java-io/Makefile.in,
        classpath/native/jni/native-lib/Makefile.in,
        classpath/native/jni/java-util/Makefile.in,
        classpath/native/jni/midi-alsa/Makefile.in,
        classpath/native/jni/java-lang/Makefile.in,
        classpath/native/jni/java-nio/Makefile.in,
        classpath/native/jni/java-net/Makefile.in,
        classpath/native/jni/xmlj/Makefile.in,
        classpath/native/jni/qt-peer/Makefile.in,
        classpath/native/jni/gtk-peer/Makefile.in,
        classpath/native/Makefile.in, classpath/native/jawt/Makefile.in,
        classpath/native/fdlibm/Makefile.in,
        classpath/native/plugin/Makefile.in,
        classpath/resource/Makefile.in, classpath/scripts/Makefile.in,
        classpath/tools/Makefile.in, classpath/doc/Makefile.in,
        classpath/doc/api/Makefile.in, classpath/lib/Makefile.in,
        classpath/external/Makefile.in, classpath/external/jsr166/Makefile.in,
        classpath/external/sax/Makefile.in,
        classpath/external/w3c_dom/Makefile.in,
        classpath/external/relaxngDatatype/Makefile.in,
        classpath/include/Makefile.in,
        classpath/examples/Makefile.in: Regenerate.
        * classpath/config.guess, classpath/config.sub,
        classpath/ltmain.sh : Update.
        * classpath/configure, classpath/depcomp, classpath/missing,
        classpath/aclocal.m4, classpath/install-sh: Regenerate.

        * gnu/classpath/Configuration.java (CLASSPATH_VERSION): Now 0.95.
        * sources.am: Regenerate.
        * Makefile.in: Regenerate.

        * Update the .class files and generated CNI header files, add new
        .class and generated CNI header files.
        * Remove generated files for removed java source files:
        classpath/gnu/java/net/BASE64.java,
        classpath/gnu/java/security/util/Base64.java,
        classpath/gnu/java/awt/peer/gtk/GThreadMutex.java,
        classpath/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java,
        classpath/gnu/java/awt/font/autofit/Scaler.java,
        classpath/gnu/classpath/jdwp/util/Value.java,
        classpath/gnu/javax/net/ssl/Base64.java.
        * Remove empty directories.

        * Makefile.am(nat_source_files): Add natVMOperatingSystemMXBeanImpl.cc.
        * java/lang/Class.java(setAccessible): Merge from classpath.
        * java/util/Locale.java: Remove.
        * gnu/java/lang/management/VMOperatingSystemMXBeanImpl.java,
        gnu/java/lang/management/natVMOperatingSystemMXBeanImpl.cc: New.
        * gcj/javaprims.h: Update class declarations.
        * scripts/classes.pl: Update usage.
        * HACKING: Mention to build all peers.

From-SVN: r125302
2007-06-03 23:18:43 +00:00
Andrew Pinski
af333b9a7f configure.ac: Fix a typo in *-*-darwin clause.
2007-06-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * configure.ac: Fix a typo in *-*-darwin clause.
        * configure: Regenerated.

From-SVN: r125301
2007-06-03 13:38:37 -07:00
Zdenek Dvorak
49379cb193 re PR tree-optimization/32194 (ice for legal code with -O3 with complex in loop)
PR tree-optimization/32194
	* tree-predcom.c (determine_offset): Check that both references have
	the same type.

From-SVN: r125298
2007-06-03 19:21:12 +00:00
Zdenek Dvorak
66f97d31f2 cfgloopmanip.c (remove_path, [...]): Change dom_bbs to vector.
* cfgloopmanip.c (remove_path, loopify, duplicate_loop_to_header_edge):
	Change dom_bbs to vector.  Add argument to iterate_fix_dominators call.
	* loop-unroll.c (unroll_loop_runtime_iterations): Ditto.
	* tree-cfg.c (tree_duplicate_sese_region): Change doms to vector.
	Add argument to iterate_fix_dominators call.
	(remove_edge_and_dominated_blocks): Pass vector to bbs_to_fix_dom.
	* gcse.c (hoist_code): Change domby to vector.
	* cfghooks.c (make_forwarder_block): Change doms_to_fix to vector.
	Add argument to iterate_fix_dominators call.
	* loop-doloop.c (doloop_modify): Changed recount_dominator to
	recompute_dominator.
	* lambda-code.c (perfect_nestify): Ditto.
	* cfgloopanal.c: Include graphds.h.
	(struct edge, struct vertex, struct graph, dump_graph, new_graph,
	add_edge, dfs, for_each_edge, free_graph): Moved to graphds.c.
	(mark_irreducible_loops): Use graphds_scc.  Remove argument from
	add_edge call.
	* graphds.c: New file.
	* graphds.h: New file.
	* dominance.c: Include vecprim.h, pointer-set.h and graphds.h.
	(get_dominated_by, get_dominated_by_region): Change return type to
	vector.
	(verify_dominators): Recompute all dominators and compare the results.
	(recount_dominator): Renamed to ...
	(recompute_dominator): ... this.  Do not check that the block is
	dominated by entry.
	(iterate_fix_dominators): Reimplemented.
	(prune_bbs_to_update_dominators, root_of_dom_tree,
	determine_dominators_for_sons): New functions.
	* et-forest.c (et_root): New function.
	* et-forest.h (et_root): Declare.
	* Makefile.in (graphds.o): Add.
	(cfgloopanal.o): Add graphds.h dependency.
	(dominance.o): Add graphds.h, vecprim.h and pointer-set.h dependency.
	* basic-block.h (get_dominated_by, get_dominated_by_region,
	iterate_fix_dominators): Declaration changed.
	(recount_dominator): Renamed to ...
	(recompute_dominator): ... this.
	* tree-ssa-threadupdate.c (thread_block): Free dominance info.
	(thread_through_all_blocks): Do not free dominance info.

From-SVN: r125297
2007-06-03 19:10:44 +00:00
Andreas Schwab
b6a9c30c80 m68k.c (override_options): Don't override REAL_MODE_FORMAT.
* config/m68k/m68k.c (override_options): Don't override
	REAL_MODE_FORMAT.
	* config/m68k/m68k-modes.def (SF, DF): Define to use
	motorola_single_format and motorola_double_format, resp.
	* real.c (motorola_single_format): Renamed from
	coldfire_single_format.
	(motorola_double_format): Renamed from coldfire_double_format.
	(encode_ieee_extended): Generate a proper canonical NaN image
	respecting canonical_nan_lsbs_set.
	(ieee_extended_motorola_format): Set canonical_nan_lsbs_set to
	true.
	* real.h: Adjust declarations.

From-SVN: r125295
2007-06-03 14:32:43 +00:00
Tobias Burnus
4889b20e23 re PR fortran/32124 (Execution stops with stat= in ALLOCATE)
2007-05-28  Tobias Burnus  <burnus@net-b.de>

       PR fortran/32124
       * gfortran.dg/allocate_stat_1.f90: Remove.

From-SVN: r125293
2007-06-03 09:25:54 +02:00