* gcc.c (option_map): New flag -no-canonical-prefixes.
* (display_help): Print help text for new flag.
* (process_command): Move options translation and language specifics
and handle new flag early. Use it to set a function pointer to a
prefix builder. Replace make_relative_prefix calls with calls to
the function pointed to. Ignore new flag in regular options handling.
* doc/invoke.texi (Overall Options): Documented -no-canonical-prefixes.
From-SVN: r149702
*extendsi_truncate<mode>): Change type attribute to move_type
with shift_shift. Split out code handling exts from here ...
(*extend<GPR:mode>_truncate<SHORT:mode>_exts): ... to this new
pattern.
(*extendhi_truncateqi): Change type attribute to move_type with
shift_shift. Split out code handling exts from here ...
(*extendhi_truncateqi_exts): ... to this new pattern.
From-SVN: r149694
* config/i386/sse.md (copysign<mode>3): Use "and-not" SSE instruction
instead of "and" with inverted sign bit mask value. Use
"nonimmediate_operand" for operand 1 and operand 2 predicate.
Allocate registers only for operand 4 and operand 5.
From-SVN: r149691
2009-07-15 Robert Dewar <dewar@adacore.com>
* par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for
N_Label. Remove SCO table entry for entry point (not used).
* par_sco.ads: Remove SCO entry point type (not used)
* switch.adb: Minor code clean up.
2009-07-15 Eric Botcazou <ebotcazou@adacore.com>
* exp_dbug.ads (Base Record Types): Document enhanced encoding.
2009-07-15 Thomas Quinot <quinot@adacore.com>
* gnatls.adb: Minor reformatting
* gnatcmd.adb: Minor code reorganization
2009-07-15 Ed Schonberg <schonberg@adacore.com>
* exp_util.adb (Component_May_Be_Bit_Aligned): Use underlying type to
determine whether a component of a private type has a composite type.
From-SVN: r149688
2009-07-15 Robert Dewar <dewar@adacore.com>
* sem_ch10.adb: Minor reformatting throughout
Minor code reorganization (put nested subprograms in alpha order)
2009-07-15 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Call): Prevent double attachment of the result
when compiling a call to a protected function that returns a controlled
object.
2009-07-15 Hristian Kirtchev <kirtchev@adacore.com>
* sysdep.c (__gnat_localtime_tzoff): Consolidate the Lynx cases into
one. Add task locking and unlocking around the critical region which
mentions localtime_r and global variable timezone for various targets.
Comment reformatting.
From-SVN: r149686
2009-07-15 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Document s-ststop.ads
* impunit.ad: (Map_Array): New table of alternative names
(Get_Kind_Of_Unit): Return possible suggested alternative name
* impunit.ads (Get_Kind_Of_Unit): Return possible suggested
alternative name.
* sem_ch10.adb (Analalyze_With_Clause): Add name of possible
alternative unit if an implementation unit is with'ed.
From-SVN: r149685
2009-07-15 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Minor updates.
* snames.ads-tmpl: Minor comment updates for Ada 2005 fully implemented
From-SVN: r149680
2009-07-15 Ed Schonberg <schonberg@adacore.com>
* sem_warn.adb (Warn_On_Constant_Condition): Handle properly constant
conditions of a derived boolean type.
Minor reformatting
2009-07-15 Robert Dewar <dewar@adacore.com>
* gnat1drv.adb: Initialize SCO tables
* par-load.adb: Call SCO_Record for main unit spec
* par.adb: Make call to SCO_Record for main unit
* par_sco.adb (Unit_Table): Change format to facilitate sort
(Process_Decisions): New procedure with list argument
(Traverse_Generic_Package_Declaration): New procedure
(Initialize): New procedure, replaces Init
(SCO_Output): Sort unit table before output
(SCO_Record): Avoid duplications
(SCO_Record): Handle remaining cases of units
(Traverse_Declarations_Or_Statements): Handle generics
* par_sco.ads (Initialize): New peocedure (replaces Init)
* sem_ch10.adb (Analyze_Proper_Body): Make call to SCO_Record for
subunit.
2009-07-15 Arnaud Charlet <charlet@adacore.com>
* debug.adb: Add -gnatd.J switch for now to support scil generation in
parallel. Add missing doc for -gnatd.I and -gnatd.O
From-SVN: r149679
2009-07-15 Robert Dewar <dewar@adacore.com>
* par.adb: Minor reformatting
Add ??? comment for possible bad comment
* par-ch10.adb: Minor reformatting
From-SVN: r149677
PR middle-end/40747
* fold-const.c (fold_cond_expr_with_comparison): When folding
< and <= to MIN, make sure the MIN uses the same type as the
comparison's operands.
* gcc.c-torture/execute/pr40747.c: New test.
From-SVN: r149675
2009-07-15 Sergey Rybin <rybin@adacore.com>
* tree_in.ads, output.adb, tree_io.ads: Get rid of pragmas Warnings
Off/On for with clause to System.OS_Lib - not needed any more.
2009-07-15 Ed Schonberg <schonberg@adacore.com>
* sem_warn.adb (Warn_On_Constant_Condition): if the constant condition
is a literal of a derived boolean type, it appears as an unchecked
conversion. Retrieve actual value from expression of conversion.
2009-07-15 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb: Minor reformatting
* lib-xref.ads, lib-xref.adb, lib.ads, par_sco.ads, par_sco.adb,
lib-writ.ads, lib-writ.adb: Minor reformatting.
Fix problem with SCO format in ALI files
From-SVN: r149674
* arm.md (ior_xor): New code iterator.
(split for ior/xor with shift and zero-extend): New split pattern.
* arm/predicates.md (subreg_lowpart_operator): New special predicate.
From-SVN: r149673
2009-07-15 Robert Dewar <dewar@adacore.com>
* debug.adb: Add -gnatd.O to output SCO table
* lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO
information.
* lib-writ.ads: Document addition of SCO lines to ALI file
* par_sco.ads, par_sco.adb: New files.
* opt.ads (Generate_SCO): New switch
* par.adb (Par): Call SCO_Record to record SCO information
* sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition
* switch-c.adb: Recognize -gnateS to generate SCO information
* usage.adb: Add line for -gnateS
* gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1
From-SVN: r149669
2009-07-15 Sergey Rybin <rybin@adacore.com>
* tree_in.ads, tree_io.ads: Add pragma Warnings Off/On for with clause
to System.OS_Lib to avoid warnings.
2009-07-15 Robert Dewar <dewar@adacore.com>
* sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor
reformatting.
2009-07-15 Thomas Quinot <quinot@adacore.com>
* g-socthi-mingw.adb: Minor comment addition
* g-socthi-mingw.ads (WSAStartup): First argument is a WORD not an int.
From-SVN: r149668
2009-07-14 Ghassan Shobaki <ghassan.shobaki@amd.com>
* doc/invoke.texi: Added descriptions of the
scheduling heuristics that are enabled/disabled
by the flags introduced by a previous patch.
From-SVN: r149650
* config/mep/mep.c (mep_vliw_jmp_match): New function.
* config/mep/mep-protos.h (mep_vliw_jmp_match): Prototype it.
* config/mep/mep.md (sibcall_internal): Change test from
mep_vliw_mode_match to mep_vliw_jmp_match.
(sibcall_value_internal): Likewise.
From-SVN: r149644
* gcc.target/i386/sse-recip-vec.c: Move arrays out of test
function to enable vectorization.
* gcc.target/i386/sse2-lrint-vec.c: Ditto.
* gcc.target/i386/sse2-lrintf-vec.c: Ditto.
From-SVN: r149641
* name-lookup.c (qualified_lookup_using_namespace): Don't stop
looking in used namespaces just because we found something on
another branch.
From-SVN: r149637
* builtins.c (can_trust_pointer_alignment): New fn.
(get_pointer_alignment): Factor it out from here.
* tree.h: Declare it.
* cp/call.c (build_over_call): Use it.
From-SVN: r149635
2009-07-14 Jack Howarth <howarth@bromo.med.uc.edu>
* testsuite/gcc.c-torture/compile/20000804-1.c: skip for ilp32 on
both i?86-*-darwin* and x86_64-*-darwin*.
From-SVN: r149631
2009-07-14 Richard Guenther <rguenther@suse.de>
PR middle-end/40745
* cfgexpand.c (partition_stack_vars): Do not bother to update
alias information when not optimizing.
From-SVN: r149627