OSDN Git Service
charlet [Fri, 1 Aug 2008 07:38:17 +0000 (07:38 +0000)]
2008-08-01 Jose Ruiz <ruiz@adacore.com>
* cstreams.c (__gnat_full_name): RTSS applications cannot ask for the
current directory so only fully qualified names are allowed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138460
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 1 Aug 2008 07:38:08 +0000 (07:38 +0000)]
2008-08-01 Robert Dewar <dewar@adacore.com>
* xref_lib.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138459
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 1 Aug 2008 07:37:59 +0000 (07:37 +0000)]
2008-08-01 Robert Dewar <dewar@adacore.com>
* snames.ads:
Minor comment fixes, some pragmas were not properly
categorized in the comments, documentation change only
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138458
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 1 Aug 2008 07:37:50 +0000 (07:37 +0000)]
2008-08-01 Robert Dewar <dewar@adacore.com>
* sem_ch10.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138457
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 1 Aug 2008 07:37:40 +0000 (07:37 +0000)]
2008-08-01 Robert Dewar <dewar@adacore.com>
* s-ststop.adb: Add some ??? comments
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138456
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 1 Aug 2008 07:37:28 +0000 (07:37 +0000)]
2008-08-01 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi:
Minor editing, remove uncomfortable use of semicolon
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138455
138bc75d-0d04-0410-961f-
82ee72b054a4
bstarynk [Fri, 1 Aug 2008 05:19:40 +0000 (05:19 +0000)]
2008-08-01 Basile Starynkevitch <basile@starynkevitch>
* gcc/tree-pass.h: Added comment about not dumping passes with name
starting with star in struct opt_pass.
* gcc/passes.c (register_dump_files_1): Don't do dump for a pass with
name starting with star.
* gcc/doc/passes.texi (Pass manager): Mention pass names and special
meaning of star prefix to avoid dump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138450
138bc75d-0d04-0410-961f-
82ee72b054a4
nemet [Fri, 1 Aug 2008 01:18:16 +0000 (01:18 +0000)]
* config.gcc (mipsisa64*-*-linux*): New configuration. Set ISA
to MIPS64r2 for mipsisa64r2*.
* config/mips/mips.h (GENERATE_MIPS16E): Update comment.
(ISA_MIPS64R2): New macro.
(TARGET_CPU_CPP_BUILTINS, MULTILIB_ISA_DEFAULT): Handle it.
(ISA_HAS_64BIT_REGS, ISA_HAS_MUL3, ISA_HAS_FP_CONDMOVE,
ISA_HAS_8CC, ISA_HAS_FP4, ISA_HAS_PAIRED_SINGLE,
ISA_HAS_MADD_MSUB, ISA_HAS_NMADD4_NMSUB4, ISA_HAS_CLZ_CLO,
ISA_HAS_ROR, ISA_HAS_PREFETCH, ISA_HAS_PREFETCHX, ISA_HAS_SEB_SEH,
ISA_HAS_EXT_INS, ISA_HAS_MXHC1, ISA_HAS_HILO_INTERLOCKS,
ISA_HAS_SYNCI, MIN_FPRS_PER_FMT): Return true for ISA_MIPS64R2.
(MIPS_ISA_LEVEL_SPEC, ASM_SPEC, LINK_SPEC): Handle -mips64r2.
(TARGET_LOONGSON_2E, TARGET_LOONGSON_2F, TARGET_LOONGSON_2EF):
Move up to keep list alphabetically sorted.
(TUNE_20KC, TUNE_24K, TUNE_74K, TUNE_LOONGSON_2EF): Likewise.
* config/mips/mips.c (mips_cpu_info_table): Add default MIPS64r2
processor.
* doc/invoke.texi (MIPS Options): Add -mips64r2.
(-march=@var{arch}): Add mips64r2.
testsuite/
* gcc.target/mips/ext-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138448
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 1 Aug 2008 00:31:46 +0000 (00:31 +0000)]
2008-07-31 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/darwin.h (MAIN_STACK_BOUNDARY): Define to 128.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138446
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 1 Aug 2008 00:16:31 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138444
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 31 Jul 2008 22:04:03 +0000 (22:04 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity): Fix formatting.
* gcc-interface/utils.c (create_field_decl): Avoid superfluous work.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138440
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Thu, 31 Jul 2008 21:42:16 +0000 (21:42 +0000)]
* expr.c (expand_assignment): Check for complete type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138439
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 31 Jul 2008 21:28:54 +0000 (21:28 +0000)]
2008-07-31 H.J. Lu <hongjiu.lu@intel.com>
PR debug/36977
* cfgexpand.c (expand_stack_alignment): Set stack_realign_tried.
* dwarf2out.c (based_loc_descr): Check crtl->stack_realign_tried
for stack alignment.
* function.h (rtl_data): Add stack_realign_tried. Update
comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138438
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Thu, 31 Jul 2008 21:23:04 +0000 (21:23 +0000)]
* config/sh/sh.c (sh_canonical_va_list_type): Remove.
(TARGET_CANONICAL_VA_LIST_TYPE): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138437
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 21:22:09 +0000 (21:22 +0000)]
* mkstemps.c (mkstemps): Keep looping even for EISDIR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138436
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 20:37:21 +0000 (20:37 +0000)]
PR target/35100
* gcc.target/powerpc/longcall-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138435
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 31 Jul 2008 19:37:21 +0000 (19:37 +0000)]
2008-07-31 Chris Fairles <chris.fairles@gmail.com>
* include/std/chrono (duration): Use explicitly defaulted ctor, cctor,
dtor and assignment. Add diagnostics as per 20.8.3 paragraphs 2, 3
and 4 in WD. Other minor tweaks.
* testsuite/20_util/duration/cons/1_neg.cc: Adjust line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: New.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138434
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 19:12:14 +0000 (19:12 +0000)]
PR preprocessor/36649
* files.c (struct report_missing_guard_data): New type.
(report_missing_guard): Put paths into an array instead of printing
them right away. Return 1 rather than 0.
(report_missing_guard_cmp): New function.
(_cpp_report_missing_guards): Sort and print paths gathered by
report_missing_guard callback.
* gcc.dg/pch/cpp-3.hs: Add include guards.
* gcc.dg/pch/cpp-3a.h: Likewise.
* gcc.dg/pch/cpp-3b.h: Likewise.
* gcc.dg/cpp/mi8.c: New test.
* gcc.dg/cpp/mi8a.h: New file.
* gcc.dg/cpp/mi8b.h: New file.
* gcc.dg/cpp/mi8c.h: New file.
* gcc.dg/cpp/mi8d.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138432
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 18:56:35 +0000 (18:56 +0000)]
* mkstemps.c (mkstemps): If open failed with errno other than
EEXIST, return immediately.
* make-temp-file.c: Include errno.h.
(make_temp_file): If mkstemps failed, print an error message
before aborting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138429
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 31 Jul 2008 18:43:08 +0000 (18:43 +0000)]
2008-07-31 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/lib/libstdc++.exp (libstdc++_init): Set v3-libgomp.
(check_v3_target_parallel_mode): Robustify, just follow the
structure of testsuite/Makefile.am.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138428
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 18:08:36 +0000 (18:08 +0000)]
PR rtl-optimization/36419
* dwarf2out.c (barrier_args_size): New variable.
(compute_barrier_args_size, compute_barrier_args_size_1): New
functions.
(dwarf2out_stack_adjust): For BARRIERs call compute_barrier_args_size
if not called yet in the current function, use barrier_args_size
array to find the new args_size value.
(dwarf2out_frame_debug): Free and clear barrier_args_size.
* g++.dg/eh/async-unwind2.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138427
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 18:07:20 +0000 (18:07 +0000)]
PR c++/36405
* rtti.c (get_tinfo_decl_dynamic, get_typeid): Call
complete_type_or_else even for UNKNOWN_TYPE to get diagnostics.
* g++.dg/rtti/typeid8.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138426
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 31 Jul 2008 17:38:08 +0000 (17:38 +0000)]
PR c++/36633
* init.c (build_new_1): Don't convert pointer to the data type
until we're actually going to treat it as that type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138425
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 31 Jul 2008 15:32:51 +0000 (15:32 +0000)]
2008-07-31 H.J. Lu <hongjiu.lu@intel.com>
PR debug/36980
* dwarf2out.c (dwarf2out_frame_debug_expr): Move rule 17 before
rule 19.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138424
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:46:14 +0000 (14:46 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138422
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:41:32 +0000 (14:41 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* prj-env.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138421
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:41:22 +0000 (14:41 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* makeutl.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138420
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:41:10 +0000 (14:41 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* exp_aggr.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138419
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:41:01 +0000 (14:41 +0000)]
2008-07-31 Jose Ruiz <ruiz@adacore.com>
* s-parame-vxworks.adb
Document that this body is used for RTX in RTSS (kernel) mode.
* gcc-interface/Makefile.in
(LIBGNAT_TARGET_PAIRS for the rtx_rtss run time): Use the
s-parame-vxworks.adb body in order to have reasonable stack sizes in
RTX RTSS kernel mode. Virtual memory is not used in that case, so we
cannot ask for too big values.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138418
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 14:40:48 +0000 (14:40 +0000)]
2008-07-31 Pascal Obry <obry@adacore.com>
* prj-nmsc.adb: Keep Object and Exec directory casing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138417
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 31 Jul 2008 14:33:43 +0000 (14:33 +0000)]
2008-07-31 H.J. Lu <hongjiu.lu@intel.com>
PR debug/36976
* dwarf2out.c (dwarf2out_args_size_adjust): New.
(dwarf2out_stack_adjust): Use it.
(dwarf2out_frame_debug_expr): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138416
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 31 Jul 2008 14:12:24 +0000 (14:12 +0000)]
2008-07-31 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36978
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): Do not fold
the generated condition.
* gcc.dg/torture/pr36978.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138415
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:58:21 +0000 (13:58 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138414
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:55:12 +0000 (13:55 +0000)]
* gnat.dg/specs/null_aggr_bug.ads: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138413
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:53:55 +0000 (13:53 +0000)]
2008-07-31 Gary Dismukes <dismukes@adacore.com>
* sem_aggr.adb:
(Resolve_Record_Aggregate): Bypass error that a type without
components must have a "null record" aggregate when compiling for Ada
2005, since it's legal to give an aggregate of form (others => <>)
for such a type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138412
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:53:45 +0000 (13:53 +0000)]
2008-07-31 Hristian Kirtchev <kirtchev@adacore.com>
* exp_disp.adb (Prim_Op_Kind): Retrieve the full view when a private
tagged type is completed by a concurrent type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138411
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:45:32 +0000 (13:45 +0000)]
* gnat.dg/sync_iface_test.ad[s,b]: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138410
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:42:37 +0000 (13:42 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138409
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:31:37 +0000 (13:31 +0000)]
2008-07-31 Ed Schonberg <schonberg@adacore.com>
* sem_ch10.adb (Build_Unit_Name): If the unit name in a with_clause
has the form A.B.C and B is a unit renaming, analyze its compilation
unit and add a with_clause on A.b to the context.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138408
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:27:47 +0000 (13:27 +0000)]
2008-07-31 Hristian Kirtchev <kirtchev@adacore.com>
* bindgen.adb Comment reformatting. Update the list of run-time globals.
(Gen_Adainit_Ada): Add the declaration, import and value set for
configuration flag Canonical_Streams.
(Gen_Adainit_C): Add the declaration and initial value of external
symbol __gl_canonical_streams.
* init.c: Update the list of global values computed by the binder.
* opt.ads: Add flag Canonical_Streams.
* par-prag.adb (Prag): Include Pragma_Canonical_Streams to the list of
semantically handled pragmas.
* sem_prag.adb: Add an entry into enumeration type Sig_Flags.
(Analyze_Pragma): Add case for pragma Canonical_Streams.
* snames.adb: Add character value for name Canonical_Streams.
* snames.ads:
Add Name_Canonical_Streams to the list of configuration pragmas.
Add Pragma_Canonical_Streams to enumeration type Pragma_Id.
* snames.h: Add a definition for Pragma_Canonical_Streams.
* s-ststop.adb:
Add a flag and import to seize the value of external symbol
__gl_canonical_streams. Update comment and initial value of constant
Use_Block_IO.
* gnat_rm.texi: Add section of pragma Canonical_Streams.
* gnat_ugn.texi:
Add pragma Canonical_Streams to the list of configuration pragmas.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138407
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:26:40 +0000 (13:26 +0000)]
2008-07-31 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch6.adb (Disambiguate_Spec): Continue the disambiguation if the
corresponding spec is a primitive wrapper. Update comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138406
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:26:20 +0000 (13:26 +0000)]
2008-07-31 Quentin Ochem <ochem@adacore.com>
* s-stausa.ad? (Fill_Stack): Stack_Used_When_Filling is now stored
anymore - just used internally.
Added handling of very small tasks - when the theoretical size is
already full at the point of the call.
(Report_Result): Fixed result computation, Stack_Used_When_Filling does
not need to be added to the result.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138405
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 13:25:48 +0000 (13:25 +0000)]
2008-07-31 Javier Miranda <miranda@adacore.com>
* sem_ch4.adb (Valid_First_Argument_Of): Complete its functionality to
handle synchronized types. Required to handle well the object.operation
notation applied to synchronized types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138404
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:49:43 +0000 (12:49 +0000)]
* gnat.dg/specs/sync_iface_test.ads: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138402
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:47:08 +0000 (12:47 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138401
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:46:35 +0000 (12:46 +0000)]
2008-07-31 Javier Miranda <miranda@adacore.com>
* sem_type.adb (Has_Compatible_Type): Complete support for synchronized
types when the candidate type is a synchronized type.
* sem_res.adb (Resolve_Actuals): Reorganize code handling synchronized
types, and complete management of synchronized types adding missing
code to handle formal that is a synchronized type.
* sem_ch4.adb (Try_Primitive_Operation): Avoid testing attributes that
are not available and cause the compiler to blowup. Found compiling
test with switch -gnatc
* sem_ch6.adb (Check_Synchronized_Overriding): Remove local subprogram
Has_Correct_Formal_Mode plus code cleanup.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138400
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:46:23 +0000 (12:46 +0000)]
2008-07-31 Gary Dismukes <dismukes@adacore.com>
* checks.ads (Apply_Accessibility_Check): Add parameter Insert_Node.
* checks.adb (Apply_Accessibility_Check): Insert the check on
Insert_Node.
* exp_attr.adb:
(Expand_N_Attribute_Refernce, Attribute_Access): Pass attribute node
to new parameter Insert_Node on call to Apply_Accessibility_Check.
Necessary to distinguish the insertion node because the dereferenced
formal may come from a rename, but the check must be inserted in
front of the attribute.
* exp_ch4.adb:
(Expand_N_Allocator): Pass actual for new Insert_Node parameter on
call to Apply_Accessibility_Check.
(Expand_N_Type_Conversion): Pass actual for new Insert_Node parameter
on call to Apply_Accessibility_Check.
Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138399
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:46:11 +0000 (12:46 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* makeutl.adb (Executable_Prefix_Path): If Locate_Exec_On_Path fails,
return the empty string, instead of raising Constraint_Error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138398
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 31 Jul 2008 12:43:34 +0000 (12:43 +0000)]
2008-07-31 H.J. Lu <hongjiu.lu@intel.com>
* gcc.dg/torture/stackalign/pr16660-1.c: Include "check.h".
(f): Align to 64 byte. Use check instead of asm statement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138397
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:41:23 +0000 (12:41 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138396
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:40:15 +0000 (12:40 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138395
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:37:42 +0000 (12:37 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* prj-part.adb, prj-part.ads, prj.adb, prj.ads, prj-env.adb:
Move back spec of Parse_Single_Project to body, as it is not called
outside of package Prj.Part.
(Project_Data): Remove components Linker_Name, Linker_Path and
Minimum_Linker_Options as they are no longer set.
Remove function There_Are_Ada_Sources from package Prj and move code
in the only place it was used, in Prj.Env.Set_Ada_Paths.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138394
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:37:33 +0000 (12:37 +0000)]
2008-07-31 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb (Aggr_Size_OK): If the aggregate has a single component
and the context is an object declaration with non-static bounds, treat
the aggregate as non-static.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138393
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:37:24 +0000 (12:37 +0000)]
2008-07-31 Thomas Quinot <quinot@adacore.com>
* tbuild.ads: Fix several occurrences of incorrectly referring to
Name_Find as Find_Name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138392
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:37:14 +0000 (12:37 +0000)]
2008-07-31 Thomas Quinot <quinot@adacore.com>
* exp_ch9.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138391
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:37:04 +0000 (12:37 +0000)]
2008-07-31 Bob Duff <duff@adacore.com>
* sinput.adb (Skip_Line_Terminators): Fix handling of LF/CR -- it was
recognized as two end-of-lines, but it should be just one.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138390
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 12:31:12 +0000 (12:31 +0000)]
* gnat.dg/missing_acc_check.adb: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138389
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 11:04:10 +0000 (11:04 +0000)]
2008-07-31 Gary Dismukes <dismukes@adacore.com>
* exp_attr.adb (Enclosing_Object): New function local to handling of
access attributes,
for retrieving the innermost enclosing object prefix of a compound name.
(Expand_N_Attribute_Reference, N_Attribute_Access): In the case where an
Access attribute has a prefix that is a dereference of an access
parameter (or the prefix is a subcomponent selected from such a
dereference), apply an accessibility check to the access parameter.
Replaces code that rewrote the prefix as a type conversion (and that
didn't handle subcomponent cases).
Also, this is now only applied in the case of 'Access.
* exp_ch6.adb (Expand_Call): Add handling for the case of an access
discriminant passed as an actual to an access formal, passing the
Object_Access_Level of the object containing the access discriminant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138388
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 11:04:00 +0000 (11:04 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb:
(Record_Ada_Source): Do not set Data.Sources, component has been removed
* prj.adb: Remove component Sources in record Project_Data
* prj.ads: Remove component Sources in record Project_Data
* sinput.ads, prj-util.ads: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138387
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:27:42 +0000 (10:27 +0000)]
2008-07-31 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Use
Insert_Actions to place the pointer declaration in the code, rather
than Insert_Before_And_Analyze, so that insertions of temporaries are
kept in the proper order when transient scopes are present.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138386
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:27:30 +0000 (10:27 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Check_Library_Attributes): Check if Linker'Switches or
Linker'Default_Switches are declared. Warn if they are declared.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138385
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:27:20 +0000 (10:27 +0000)]
2008-07-31 Geert Bosch <bosch@adacore.com>
* arit64.c:
New file implementing __gnat_mulv64 signed integer multiplication with
overflow checking
* fe.h (Backend_Overflow_Checks_On_Target): Define for use by Gigi
* gcc-interface/gigi.h:
(standard_types): Add ADT_mulv64_decl
(mulv64_decl): Define subprogram declaration for __gnat_mulv64
* gcc-interface/utils.c:
(init_gigi_decls): Add initialization of mulv64_decl
* gcc-interface/trans.c:
(build_unary_op_trapv): New function
(build_binary_op_trapv): New function
(gnat_to_gnu): Use the above functions instead of
build_{unary,binary}_op
* gcc-interface/Makefile.in
(LIBGNAT_SRCS): Add arit64.c
(LIBGNAT_OBJS): Add arit64.o
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138384
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:27:04 +0000 (10:27 +0000)]
2008-07-31 Hristian Kirtchev <kirtchev@adacore.com>
* exp_attr.adb (Find_Stream_Subprogram): Check the base type instead
of the type when looking for stream subprograms for type String,
Wide_String and Wide_Wide_String.
* s-ststop.adb: Change the initialization expression of constant
Use_Block_IO.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138383
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:26:43 +0000 (10:26 +0000)]
* s-direio.adb (Reset): Replace pragma Unmodified by Warnings (Off),
so that we can compile this file successfully with -gnatc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138382
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:26:12 +0000 (10:26 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* s-regexp.ads: Minor comment fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138381
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:26:05 +0000 (10:26 +0000)]
2008-07-31 Pascal Obry <obry@adacore.com>
* s-finimp.ads: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138380
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:25:50 +0000 (10:25 +0000)]
2008-07-31 Thomas Quinot <quinot@adacore.com>
* g-pehage.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138379
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:25:35 +0000 (10:25 +0000)]
2008-07-31 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Change the description of the
Overly_Nested_Control_Structures: now the rule always requires a
positive parameter for '+R' option
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138378
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:25:14 +0000 (10:25 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* sem_ch12.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138377
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 31 Jul 2008 10:25:11 +0000 (10:25 +0000)]
2008-07-31 Richard Guenther <rguenther@suse.de>
* passes.c (init_optimization_passes): Always call
pass_early_warn_uninitialized.
* opts.c (decode_options): Do not warn about -Wuninitialized
at -O0.
* doc/invoke.texi (-Wuninitialized): Correct for enabling at -O0.
* doc/passes.texi (Warn for uninitialized variables): Adjust.
* gcc.dg/uninit-1-O0.c: New testcase.
* gcc.dg/uninit-2-O0.c: Likewise.
* gcc.dg/uninit-3-O0.c: Likewise.
* gcc.dg/uninit-4-O0.c: Likewise.
* gcc.dg/uninit-5-O0.c: Likewise.
* gcc.dg/uninit-6-O0.c: Likewise.
* gcc.dg/uninit-8-O0.c: Likewise.
* gcc.dg/uninit-9-O0.c: Likewise.
* gcc.dg/uninit-A-O0.c: Likewise.
* gcc.dg/uninit-B-O0.c: Likewise.
* gcc.dg/uninit-C-O0.c: Likewise.
* gcc.dg/uninit-D-O0.c: Likewise.
* gcc.dg/uninit-E-O0.c: Likewise.
* gcc.dg/uninit-F-O0.c: Likewise.
* gcc.dg/uninit-G-O0.c: Likewise.
* gcc.dg/uninit-H-O0.c: Likewise.
* gcc.dg/uninit-I-O0.c: Likewise.
* gcc.dg/uninit-10-O0.c: Likewise.
* gcc.dg/uninit-11-O0.c: Likewise.
* gcc.dg/uninit-12-O0.c: Likewise.
* gcc.dg/uninit-13-O0.c: Likewise.
* gcc.dg/uninit-14-O0.c: Likewise.
* gcc.dg/uninit-15-O0.c: Likewise.
* gcc.dg/Wall.c: Avoid uninitialized warning.
* gcc.dg/Wno-all.c: Likewise.
* gcc.dg/pr3074-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138376
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 10:25:05 +0000 (10:25 +0000)]
* mlib-utl.ads: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138375
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 09:46:03 +0000 (09:46 +0000)]
* gnat.dg/specs/genericppc.ads: New test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138374
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 09:43:09 +0000 (09:43 +0000)]
Resync
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138373
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 09:42:51 +0000 (09:42 +0000)]
2008-07-31 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Generic_Subprogram_Body): After analysis,
transfer pre/postconditions from generic copy to original tree, so that
they will appear in each instance.
(Process_PPCs): Do not transform postconditions into a procedure in a
generic context, to prevent double expansion of check pragmas.
* sem_attr.adb: In an instance, the prefix of the 'result attribute
can be the renaming of the
current instance, so check validity of the name accordingly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138372
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 09:42:39 +0000 (09:42 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* s-os_lib.adb: Minor comment fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138371
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 09:42:14 +0000 (09:42 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* einfo.adb (Spec_PPC): Now defined for generic subprograms
* einfo.ads (Spec_PPC): Now defined for generic subprograms
* sem_prag.adb (Check_Precondition_Postcondition): Handle generic
subprogram case
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138370
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 08:30:58 +0000 (08:30 +0000)]
Resync
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138367
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 08:19:24 +0000 (08:19 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Update -gnatN documentation.
* gnat_rm.texi: Add note about pre/postcondition
pragmas not checked in conjunction with front-end inlining.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138366
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 08:18:53 +0000 (08:18 +0000)]
2008-07-31 Vincent Celier <celier@adacore.com>
* prj.adb, clean.adb, prj-nmsc.adb, prj.ads: Remove declarations that
were for gprmake only
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138365
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 08:17:31 +0000 (08:17 +0000)]
2008-07-31 Ed Schonberg <schonberg@adacore.com>
sem_attr.adb: 'Result can have an ambiguous prefix, and is resolved
from context. This attribute must be usable in Ada95 mode.
The attribute can appear in the body of a function marked
Inline_Always, but in this case the postocondition is not enforced.
sem_prag.adb (Check_Precondition_Postcondition): within the expansion
of an inlined call pre- and postconditions are legal
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138364
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 08:17:03 +0000 (08:17 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* mlib-utl.ads: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138363
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 08:02:49 +0000 (08:02 +0000)]
PR c/36970
* builtins.c (maybe_emit_free_warning): New function.
(expand_builtin): Process BUILT_IN_FREE even at -O0. Call
maybe_emit_free_warning for BUILT_IN_FREE.
* gcc.dg/free-1.c: New test.
* gcc.dg/free-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138362
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 08:01:25 +0000 (08:01 +0000)]
PR debug/36278
* dwarf2out.c (get_context_die): New function.
(force_decl_die, force_type_die): Use it.
(dwarf2out_imported_module_or_decl): Likewise. If base_type_die
returns NULL, force generation of DW_TAG_typedef and put that into
DW_AT_import.
* g++.dg/debug/namespace2.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138361
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 31 Jul 2008 07:59:18 +0000 (07:59 +0000)]
PR preprocessor/36649
* c-pch.c (c_common_read_pch): Save and restore
line_table->trace_includes across PCH restore.
* gcc.dg/pch/cpp-3.c: New test.
* gcc.dg/pch/cpp-3.hs: New file.
* gcc.dg/pch/cpp-3a.h: New file.
* gcc.dg/pch/cpp-3b.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138360
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 07:52:12 +0000 (07:52 +0000)]
Resync
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138358
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 07:51:44 +0000 (07:51 +0000)]
* mlib-utl.ads, prj-makr.ads: Add comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138357
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Thu, 31 Jul 2008 07:51:32 +0000 (07:51 +0000)]
2008-07-31 Robert Dewar <dewar@adacore.com>
* g-pehage.adb, g-pehage.ads: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138356
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 31 Jul 2008 05:07:10 +0000 (05:07 +0000)]
PR c++/11309
* tree.c (build_aggr_init_expr): Split out...
(build_cplus_new): ...from here.
(stabilize_init): Don't mess with AGGR_INIT_EXPR either.
* init.c (build_new_1): new T() means value-initialization,
not default-initialization.
(build_vec_init): Likewise.
(build_value_init_1): Use build_aggr_init_expr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138355
138bc75d-0d04-0410-961f-
82ee72b054a4
aaronwl [Thu, 31 Jul 2008 00:18:07 +0000 (00:18 +0000)]
2008-07-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS) [WINDOWS]: Add
s-winext.o.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138353
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 31 Jul 2008 00:16:40 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138351
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 30 Jul 2008 23:54:56 +0000 (23:54 +0000)]
PR ada/36554
* dwarf2out.c (is_subrange_type): Deal with BOOLEAN_TYPE.
ada/
* back_end.adb (Call_Back_End): Pass Standard_Boolean to gigi.
* gcc-interface/gigi.h (gigi): Take new standard_boolean parameter.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Subtype>:
Set precision to 1 for subtype of BOOLEAN_TYPE.
(set_rm_size): Set TYPE_RM_SIZE_NUM for BOOLEAN_TYPE.
(make_type_from_size): Deal with BOOLEAN_TYPE.
* gcc-interface/misc.c (gnat_print_type): Likewise.
* gcc-interface/trans.c (gigi): Take new standard_boolean parameter.
Set boolean_type_node as its translation in the table, as well
as boolean_false_node for False and boolean_true_node for True.
* gcc-interface/utils.c (gnat_init_decl_processing): Create custom
8-bit boolean_type_node and set its TYPE_RM_SIZE_NUM.
(create_param_decl): Deal with BOOLEAN_TYPE.
(build_vms_descriptor): Likewise.
(build_vms_descriptor64): Likewise.
(convert): Deal with BOOLEAN_TYPE like with ENUMERAL_TYPE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138348
138bc75d-0d04-0410-961f-
82ee72b054a4
espindola [Wed, 30 Jul 2008 23:23:33 +0000 (23:23 +0000)]
2008-07-30 Rafael Avila de Espindola <espindola@google.com>
PR 36974
* final.c (call_from_call_insn): Handle COND_EXEC
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138347
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 30 Jul 2008 20:19:53 +0000 (20:19 +0000)]
2008-07-30 H.J. Lu <hongjiu.lu@intel.com>
* builtins.c (std_gimplify_va_arg_expr): Replace
PREFERRED_STACK_BOUNDARY with MAX_SUPPORTED_STACK_ALIGNMENT.
* config/i386/i386.c (ix86_gimplify_va_arg): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138340
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 30 Jul 2008 19:24:02 +0000 (19:24 +0000)]
2008-07-30 H.J. Lu <hongjiu.lu@intel.com>
Joey Ye <joey.ye@intel.com>
* gcc.dg/dfp/func-vararg-alternate-d128-2.c: New.
* gcc.dg/dfp/func-vararg-mixed-2.c: Likewise.
* gcc.dg/torture/stackalign/alloca-1.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-1.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-2.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-3.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-4.c: Likewise.
* gcc.dg/torture/stackalign/builtin-return-1.c: Likewise.
* gcc.dg/torture/stackalign/check.h: Likewise.
* gcc.dg/torture/stackalign/comp-goto-1.c: Likewise.
* gcc.dg/torture/stackalign/fastcall-1.c: Likewise.
* gcc.dg/torture/stackalign/global-1.c: Likewise.
* gcc.dg/torture/stackalign/inline-1.c: Likewise.
* gcc.dg/torture/stackalign/inline-2.c: Likewise.
* gcc.dg/torture/stackalign/nested-1.c: Likewise.
* gcc.dg/torture/stackalign/nested-2.c: Likewise.
* gcc.dg/torture/stackalign/nested-3.c: Likewise.
* gcc.dg/torture/stackalign/nested-4.c: Likewise.
* gcc.dg/torture/stackalign/nested-5.c: Likewise.
* gcc.dg/torture/stackalign/nested-6.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-1.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-2.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-3.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-4.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-5.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-1.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-2.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-3.c: Likewise.
* gcc.dg/torture/stackalign/regparm-1.c: Likewise.
* gcc.dg/torture/stackalign/ret-struct-1.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-1.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-2.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-3.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-4.c: Likewise.
* gcc.dg/torture/stackalign/sibcall-1.c: Likewise.
* gcc.dg/torture/stackalign/stackalign.exp: Likewise.
* gcc.dg/torture/stackalign/struct-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-2.c: Likewise.
* gcc.target/i386/align-main-1.c: Likewise.
* gcc.target/i386/align-main-2.c: Likewise.
* gcc.target/i386/pr32000-2.c: Likewise.
* gcc.target/i386/stackalign/asm-1.c: Likewise.
* gcc.target/i386/stackalign/return-1.c: Likewise.
* gcc.target/i386/stackalign/return-2.c: Likewise.
* gcc.target/i386/stackalign/return-3.c: Likewise.
* gcc.target/i386/stackalign/return-4.c: Likewise.
* gcc.target/i386/stackalign/return-5.c: Likewise.
* gcc.target/i386/stackalign/return-6.c: Likewise.
* gcc.target/i386/stackalign/stackalign.exp: Likewise.
* g++.dg/torture/stackalign/check.h: Likewise.
* g++.dg/torture/stackalign/eh-alloca-1.C: Likewise.
* g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
* g++.dg/torture/stackalign/eh-global-1.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-1.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-2.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-1.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-2.C: Likewise.
* g++.dg/torture/stackalign/stackalign.exp: Likewise.
* g++.dg/torture/stackalign/stdcall-1.C: Likewise.
* g++.dg/torture/stackalign/test-unwind.h: Likewise.
* g++.dg/torture/stackalign/throw-1.C: Likewise.
* g++.dg/torture/stackalign/throw-2.C: Likewise.
* g++.dg/torture/stackalign/throw-3.C: Likewise.
* g++.dg/torture/stackalign/throw-4.C: Likewise.
* g++.dg/torture/stackalign/unwind-0.C: Likewise.
* g++.dg/torture/stackalign/unwind-1.C: Likewise.
* g++.dg/torture/stackalign/unwind-2.C: Likewise.
* g++.dg/torture/stackalign/unwind-3.C: Likewise.
* g++.dg/torture/stackalign/unwind-4.C: Likewise.
* g++.dg/torture/stackalign/unwind-5.C: Likewise.
* g++.dg/torture/stackalign/unwind-6.C: Likewise.
* gcc.target/i386/
20060512-1.c: Add -mpreferred-stack-boundary=4.
(main): Move "popl" after check.
* gcc.target/i386/
20060512-3.c: Likewise.
* gcc.target/i386/
20060512-2.c: Add -mpreferred-stack-boundary=4.
Remove dg-error.
* gcc.target/i386/
20060512-4.c: Add -mpreferred-stack-boundary=4.
Remove dg-warning.
* lib/target-supports.exp (check_effective_target_unaligned_stack):
Always return 0.
(check_effective_target_automatic_stack_alignment): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138336
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 30 Jul 2008 19:20:43 +0000 (19:20 +0000)]
2008-07-30 Joey Ye <joey.ye@intel.com>
H.J. Lu <hongjiu.lu@intel.com>
* builtins.c (expand_builtin_setjmp_receiver): Replace
virtual_incoming_args_rtx with crtl->args.internal_arg_pointer.
(expand_builtin_apply_args_1): Likewise.
(expand_builtin_longjmp): Need DRAP for stack alignment.
(expand_builtin_apply): Likewise.
* caller-save.c (setup_save_areas): Call assign_stack_local_1
instead of assign_stack_local to allow alignment reduction.
* calls.c (emit_call_1): Need DRAP for stack alignment if
return pops.
(expand_call): Replace virtual_incoming_args_rtx with
crtl->args.internal_arg_pointer.
* stmt.c (expand_nl_goto_receiver): Likewise.
* cfgexpand.c (get_decl_align_unit): Estimate stack variable
alignment and store to stack_alignment_estimated and
max_used_stack_slot_alignment.
(expand_one_var): Likewise.
(expand_stack_alignment): New function.
(tree_expand_cfg): Initialize max_used_stack_slot_alignment
and stack_alignment_estimated fields in rtl_data. Call
expand_stack_alignment at end.
* defaults.h (INCOMING_STACK_BOUNDARY): New.
(MAX_STACK_ALIGNMENT): Likewise.
(MAX_SUPPORTED_STACK_ALIGNMENT): Likewise.
(SUPPORTS_STACK_ALIGNMENT): Likewise.
* emit-rtl.c (gen_reg_rtx): Estimate stack alignment for
stack alignment when generating virtual registers.
* function.c (assign_stack_local): Renamed to ...
(assign_stack_local_1): This. Add a parameter to indicate
if it is OK to reduce alignment.
(assign_stack_local): Use it.
(instantiate_new_reg): Instantiate virtual incoming args rtx
to vDRAP if stack realignment and DRAP is needed.
(assign_parms): Collect parameter/return type alignment and
contribute to stack_alignment_estimated.
(locate_and_pad_parm): Likewise.
(get_arg_pointer_save_area): Replace virtual_incoming_args_rtx
with crtl->args.internal_arg_pointer.
* function.h (rtl_data): Add new field drap_reg,
max_used_stack_slot_alignment, stack_alignment_estimated,
stack_realign_needed, need_drap, stack_realign_processed and
stack_realign_finalized.
(stack_realign_fp): New macro.
(stack_realign_drap): Likewise.
* global.c (compute_regsets): Frame pointer is needed when
stack is realigned. Can eliminate frame pointer when stack is
realigned and dynamic realigned argument pointer isn't used.
* reload1.c (update_eliminables): Frame pointer is needed
when stack is realigned.
(init_elim_table): Can eliminate frame pointer when stack is
realigned and dynamic realigned argument pointer isn't used.
* rtl.h (assign_stack_local_1): Declare new funtion.
* target-def.h (TARGET_UPDATE_STACK_BOUNDARY): New.
(TARGET_GET_DRAP_RTX): Likewise.
(TARGET_CALLS): Add TARGET_UPDATE_STACK_BOUNDARY and
TARGET_GET_DRAP_RTX.
* target.h (gcc_target): Add update_stack_boundary and
get_drap_rtx.
* tree-vectorizer.c (vect_can_force_dr_alignment_p): Replace
STACK_BOUNDARY with MAX_STACK_ALIGNMENT.
2008-07-30 Xuepeng Guo <xuepeng.guo@intel.com>
H.J. Lu <hongjiu.lu@intel.com>
* dwarf2out.c (dw_fde_struct): Add stack_realignment, drap_reg,
vdrap_reg, stack_realign and drap_reg_saved.
(add_cfi): Don't allow redefining CFA when DRAP is used.
(reg_save): Handle stack alignment.
(dwarf2out_frame_debug_expr): Add rules 16-20 to handle stack
alignment. Don't generate DWARF information for (set fp sp)
when DRAP is used.
(dwarf2out_begin_prologue): Initialize drap_reg and vdrap_reg
to INVALID_REGNUM.
(int_loc_descriptor): Move prototype forward. Also define if
DWARF2_UNWIND_INFO is true.
(output_cfa_loc): Handle DW_CFA_expression.
(build_cfa_aligned_loc): New.
(based_loc_descr): Update assert for stack realign. For local
variables, use sp+offset when stack is aligned without drap and
fp+offset when stack is aligned with drap. For arguments, use
cfa+offset when drap is used to align stack.
2008-07-30 Joey Ye <joey.ye@intel.com>
H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_force_align_arg_pointer_string):
Break long line.
(ix86_gen_andsp): New.
(ix86_user_incoming_stack_boundary): Likewise.
(ix86_default_incoming_stack_boundary): Likewise.
(ix86_incoming_stack_boundary): Likewise.
(ix86_can_eliminate): Likewise.
(find_drap_reg): Likewise.
(ix86_update_stack_boundary): Likewise.
(ix86_get_drap_rtx): Likewise.
(ix86_finalize_stack_realign_flags): Likewise.
(TARGET_UPDATE_STACK_BOUNDARY): Likewise.
(TARGET_GET_DRAP_RTX): Likewise.
(override_options): Overide option value for new options.
(ix86_function_ok_for_sibcall): Remove check for
force_align_arg_pointer.
(ix86_handle_cconv_attribute): Likewise.
(ix86_function_regparm): Likewise.
(setup_incoming_varargs_64): Don't set stack_alignment_needed
here.
(ix86_va_start): Replace virtual_incoming_args_rtx with
crtl->args.internal_arg_pointer.
(ix86_select_alt_pic_regnum): Check DRAP register.
(ix86_save_reg): Replace force_align_arg_pointer with drap_reg.
(ix86_compute_frame_layout): Compute frame layout wrt stack
realignment.
(ix86_internal_arg_pointer): Just return
virtual_incoming_args_rtx.
(ix86_expand_prologue): Decide if stack realignment is needed
and generate prologue code accordingly.
(ix86_expand_epilogue): Generate epilogue code wrt stack
realignment is really needed or not.
* config/i386/i386.h (MAIN_STACK_BOUNDARY): New.
(ABI_STACK_BOUNDARY): Likewise.
(PREFERRED_STACK_BOUNDARY_DEFAULT): Likewise.
(STACK_REALIGN_DEFAULT): Likewise.
(INCOMING_STACK_BOUNDARY): Likewise.
(MAX_STACK_ALIGNMENT): Likewise.
(ix86_incoming_stack_boundary): Likewise.
(FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): Removed.
(REAL_PIC_OFFSET_TABLE_REGNUM): Updated to use BX_REG.
(CAN_ELIMINATE): Defined with ix86_can_eliminate.
(machine_function): Remove force_align_arg_pointer.
* config/i386/i386.md (BX_REG): New.
(R13_REG): Likewise.
* config/i386/i386.opt (mforce_drap): New.
(mincoming-stack-boundary): Likewise.
(mstackrealign): Add Init(-1).
* config/i386/i386-protos.h (ix86_can_eliminate): New
2008-07-30 H.J. Lu <hongjiu.lu@intel.com>
* doc/extend.texi: Update force_align_arg_pointer.
* doc/invoke.texi: Document -mincoming-stack-boundary. Update
-mstackrealign.
* doc/tm.texi (MAX_STACK_ALIGNMENT): Add macro.
(INCOMING_STACK_BOUNDARY): Likewise.
(TARGET_UPDATE_STACK_BOUNDARY): New target hook.
(TARGET_GET_DRAP_RTX): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138335
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Wed, 30 Jul 2008 18:22:50 +0000 (18:22 +0000)]
PR rtl-optimization/36929
* dse.c (replace_inc_dec): Use emit_insn_before instead of
add_insn_before and fix argument order.
(replace_inc_dec_mem): Handle NULL rtx.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138333
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 30 Jul 2008 17:39:56 +0000 (17:39 +0000)]
Resync.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138332
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 30 Jul 2008 17:38:55 +0000 (17:38 +0000)]
2008-07-30 Laurent Pautet <pautet@adacore.com>
* g-pehage.adb:
Remove a limitation on the length of the words handled by the minimal
perfect hash function generator.
* g-pehage.ads:
Detail the use of subprograms Insert, Initialize, Compute and Finalize.
Fix some typos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138331
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 30 Jul 2008 17:38:25 +0000 (17:38 +0000)]
2008-07-30 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138330
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Wed, 30 Jul 2008 17:38:16 +0000 (17:38 +0000)]
2008-07-30 Robert Dewar <dewar@adacore.com>
* exp_util.ads (Find_Prim_Op): Document that Program_Error is raised
if no primitive operation is found.
* exp_util.adb: (Find_Prim_Op): Add comments for previous change
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138329
138bc75d-0d04-0410-961f-
82ee72b054a4