PR target/44546
* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
New predicate.
* config/i386/i386.md (*fp_jcc_8<mode>_387): Use
ix86_swapped_fp_comparsion_operator instead of
ix86_fp_comparison_operator.
(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
(*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.
testsuite/ChangeLog:
PR target/44546
* gcc.target/i386/pr44546.c: New test.
From-SVN: r161055
2010-06-20 Paolo Carlini <paolo.carlini@oracle.com>
Kai-Uwe Bux <bux@kubux.net>
* include/bits/random.tcc (uniform_int_distribution<>::operator()):
Fix to work well for arbitrary urng.max() and urng.min().
Co-Authored-By: Kai-Uwe Bux <bux@kubux.net>
From-SVN: r161054
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Use while instead of
for loop. Call build_constructor_from_list directly in the CICO case.
From-SVN: r161046
2010-06-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/44477
* io/file_pos.c (st_endfile): Add check for ENDFILE when file is
already positioned after the EOF marker. Use find_or_create_unit
instead of find_unit. If unit is not connected, connect it and create
the file with default settings.
* io/transfer.c (data_transfer_init): Add check for attempted READ or
WRITE when file is already positioned after the EOF marker.
From-SVN: r161020
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Build_And_Analyze_Renamed_Body): If the renaming
declaration appears in the same unit and ealier than the renamed
entity, retain generated body to prevent order-of-elaboration issues in
gigi.
2010-06-18 Arnaud Charlet <charlet@adacore.com>
* s-tpoben.adb: Update comments.
2010-06-18 Robert Dewar <dewar@adacore.com>
* debug.adb: Minor comment change.
From-SVN: r161010
PR rtl-optimization/40900
* expr.c (expand_expr_real_1) <SSA_NAME>: Fix long line. Save the
original expression for later reuse.
<expand_decl_rtl>: Use promote_function_mode to compute the signedness
of the promoted RTL for a SSA_NAME on the LHS of a call statement.
From-SVN: r161006
2010-06-18 Javier Miranda <miranda@adacore.com>
* exp_cg.adb (Homonym_Suffix_Length): Minor code reorganization.
2010-06-18 Thomas Quinot <quinot@adacore.com>
* sprint.ads: Minor reformatting.
* output.ads: Update obsolete comment.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Build_And_Analyze_Renamed_Body): if the renamed entity is
an external intrinsic operation (e.g. a GCC numeric function) indicate
that the renaming entity has the same characteristics, so a call to it
is properly expanded.
From-SVN: r161003
gcc/
* function.h (types_used_by_cur_var_decl): Change type to a VEC.
* function.c (types_used_by_cur_var_decl): Likewise.
(used_types_insert): Adjust for new type of
types_used_by_cur_var_decl.
gcc/c-family/
* c-common.c (record_types_used_by_current_var_decl): Adjust for
new type of types_used_by_cur_var_decl.
From-SVN: r161001
* tree.h (record_layout_info): Change type of pending_statics field
to a VEC.
* stor-layout.c (start_record_layout): Store NULL into
pending_statics.
(debug_rli): Call debug_vec_tree instead of debug_tree.
(place_field): Likewise.
(finish_record_layout): Likewise.
From-SVN: r161000
2010-06-18 Javier Miranda <miranda@adacore.com>
* exp_cg.adb (Homonym_Suffix_Length): Minor code reorganization.
2010-06-18 Thomas Quinot <quinot@adacore.com>
* sprint.ads: Minor reformatting.
* output.ads: Update obsolete comment.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Build_And_Analyze_Renamed_Body): if the renamed entity is
an external intrinsic operation (e.g. a GCC numeric function) indicate
that the renaming entity has the same characteristics, so a call to it
is properly expanded.
From-SVN: r160999
2010-06-18 Javier Miranda <miranda@adacore.com>
* exp_cg.adb, exp_cg.ads, exp_disp.adb, gnat1drv.adb: Add initial
support for dispatch table/callgraph info generation.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r160997
2010-06-18 Vincent Celier <celier@adacore.com>
* gnatname.adb (Scan_Args): When --and is used, make sure that the
dynamic tables in the newly allocated Argument_Data are properly
initialized.
2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
* gnat1drv.adb: Fix comment.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Inlined_Call): If the inlined subprogram is a
renaming, re-expand the call with the renamed subprogram if that one
is marked inlined as well.
From-SVN: r160995
2010-06-18 Gary Dismukes <dismukes@adacore.com>
* gnat1drv.adb (Adjust_Global_Switches): Enable
Use_Expression_With_Actions for AAMP and VM targets.
2010-06-18 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Process_Linker): Recognize response file format GCC.
From-SVN: r160994
2010-06-18 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb: Minor reformatting.
2010-06-18 Javier Miranda <miranda@adacore.com>
* debug.ads Add documentation on -gnatd.Z.
From-SVN: r160993
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* sem_elim.adb: Proper error message on improperly eliminated instances
2010-06-18 Vincent Celier <celier@adacore.com>
* prj.ads (Response_File_Format): New value GCC.
2010-06-18 Thomas Quinot <quinot@adacore.com>
* gnat1drv.adb: Minor reformatting.
From-SVN: r160992
2010-06-18 Robert Dewar <dewar@adacore.com>
* sem_eval.adb (Eval_Conditional_Expression): Result is static if
condition and both sub-expressions are static (and result is selected
expression).
2010-06-18 Robert Dewar <dewar@adacore.com>
* g-pehage.adb: Minor reformatting
2010-06-18 Pascal Obry <obry@adacore.com>
* prj-nmsc.adb (Search_Directories): Insert canonical filenames into
source hash table.
From-SVN: r160988
2010-06-18 Pascal Obry <obry@adacore.com>
* make.adb, prj-nmsc.adb: Fix source filenames casing in debug output.
2010-06-18 Vincent Celier <celier@adacore.com>
* gnatcmd.adb: For gnatcheck, add -gnatec= switch for a global
configuration pragmas file and, if -U is not used, for a local one.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* sem_elim.adb (Check_Eliminated): Use full information on entity name
when it is given in the pragma by a selected component.
(Check_For_Eliminated_Subprogram): Do no emit error if within a
instance body that is itself within a generic unit.
* sem_ch12.adb (Analyze_Subprogram_Instance): If the subprogram is
eliminated, mark as well the anonymous subprogram that is its alias
and appears within the wrapper package.
From-SVN: r160986
2010-06-18 Bob Duff <duff@adacore.com>
* g-pehage.ads, g-pehage.adb (Produce): Clean up some of the code.
Raise an exception if the output file cannot be opened. Add comments.
From-SVN: r160985
2010-06-18 Thomas Quinot <quinot@adacore.com>
* sem_cat.adb (Validate_Object_Declaration): A variable declaration is
not illegal per E.2.2(7) if it occurs in the private part of a
Remote_Types unit.
From-SVN: r160984
2010-06-18 Geert Bosch <bosch@adacore.com>
* i-forbla-darwin.adb: Include -lgnala and -lm in linker options for
Darwin.
2010-06-18 Robert Dewar <dewar@adacore.com>
* gnat1drv.adb (Adjust_Global_Switches): Set Use_Expression_With_Actions
true for gcc.
2010-06-18 Robert Dewar <dewar@adacore.com>
* sprint.adb: Minor format change for N_Expression_With_Actions.
* repinfo.adb: Minor reformatting.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* sem_elim.adb (Check_Eliminated): If within a subunit, use
Defining_Entity to obtain the name of the entity in the proper body, to
properly handle both separate packages and subprograms.
2010-06-18 Emmanuel Briot <briot@adacore.com>
* prj-nmsc.adb (Check_File): New parameter Display_Path.
From-SVN: r160976
2010-06-18 Thomas Quinot <quinot@adacore.com>
* g-socket.adb, g-socket.ads (Null_Selector): New object.
2010-06-18 Pascal Obry <obry@adacore.com>
* gnat_ugn.texi: Minor clarification.
2010-06-18 Emmanuel Briot <briot@adacore.com>
* prj-nmsc.adb (Find_Source_Dirs): Minor refactoring to avoid duplicate
code when using the project dir as the source dir.
(Search_Directories): use the normalized name for the source directory,
where symbolic names have potentially been resolved.
2010-06-18 Robert Dewar <dewar@adacore.com>
* exp_ch4.adb (Expand_N_Conditional_Expression): Clear Actions field
when we create N_Expression_With_Actions node.
(Expand_Short_Circuit): Ditto.
2010-06-18 Robert Dewar <dewar@adacore.com>
* exp_util.adb: Minor reformatting.
From-SVN: r160975
2010-06-18 Thomas Quinot <quinot@adacore.com>
* types.ads: Clean up obsolete comments
* tbuild.adb: Minor reformatting.
* exp_ch5.adb, sem_intr.adb, sem_ch10.adb, rtsfind.adb, s-shasto.adb,
exp_strm.adb, aa_drive.adb: Minor reformatting.
* sem_res.adb (Is_Predefined_Operator): An operator that is an imported
intrinsic with an Interface_Name denotes an imported back-end builtin,
and must be rewritten into a call, not left in the tree as an operator,
so return False in that case.
2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
* exp_util.adb (Remove_Side_Effects): Make a copy for an allocator.
2010-06-18 Robert Dewar <dewar@adacore.com>
* scos.ads: Add proposed output for case expression
2010-06-18 Jose Ruiz <ruiz@adacore.com>
* gnat_ugn.texi: Document that, when using the RTX compiler to generate
RTSS modules, we need to use the Microsoft linker.
From-SVN: r160974
2010-06-18 Robert Dewar <dewar@adacore.com>
* checks.adb (Safe_To_Capture_In_Parameter_Value): Deal with case
expression (cannot count on a particular branch being executed).
* exp_ch4.adb (Expand_N_Case_Expression): New procedure.
* exp_ch4.ads (Expand_N_Case_Expression): New procedure.
* exp_util.adb (Insert_Actions): Deal with proper insertion of actions
within case expression.
* expander.adb (Expand): Add call to Expand_N_Case_Expression
* par-ch4.adb Add calls to P_Case_Expression at appropriate points
(P_Case_Expression): New procedure
(P_Case_Expression_Alternative): New procedure
* par.adb (P_Case_Expression): New procedure
* par_sco.adb (Process_Decisions): Add dummy place holder entry for
N_Case_Expression.
* sem.adb (Analyze): Add call to Analyze_Case_Expression
* sem_case.ads (Analyze_Choices): Also used for case expressions now,
this is a documentation change only.
* sem_ch4.ads, sem_ch4.adb (Analyze_Case_Expression): New procedure.
* sem_ch6.adb (Fully_Conformant_Expressions): Add handling of case
expressions.
* sem_eval.ads, sem_eval.adb (Eval_Case_Expression): New procedure.
* sem_res.adb (Resolve_Case_Expression): New procedure.
* sem_scil.adb (Find_SCIL_Node): Add processing for
N_Case_Expression_Alternative.
* sinfo.ads, sinfo.adb (N_Case_Expression): New node.
(N_Case_Expression_Alternative): New node.
* sprint.adb (Sprint_Node_Actual): Add processing for new nodes
N_Case_Expression and N_Case_Expression_Alternative.
2010-06-18 Robert Dewar <dewar@adacore.com>
* par-ch7.adb, sem_warn.adb, types.ads, par-ch3.adb: Minor reformatting.
* gnat1drv.adb: Fix typo.
2010-06-18 Robert Dewar <dewar@adacore.com>
* par-prag.adb (Prag, case Style_Checks): All_Checks sets gnat style
for -gnatg.
* sem_prag.adb (Analyze_Pragma, case Style_Checks): All_Checks sets
gnat style for -gnatg.
* gnat_rm.texi: Add documentation for ALL_CHECKS in GNAT mode.
From-SVN: r160971