summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_util.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-23 06:11:20 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-23 06:11:20 +0000
commit5a44b136feb61bbde8d58721533ccfe5cd5aa41d (patch)
treea113ff1fa79d32ab0316b4d56173faae6ce7c95a /gcc/ada/exp_util.adb
parent92940d4e46661a7632770b2835426c4ed9e98845 (diff)
downloadgcc-5a44b136feb61bbde8d58721533ccfe5cd5aa41d.tar.gz
2010-06-23 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Properly handle checking returns in generic case. (Check_Missing_Return): New procedure. 2010-06-23 Robert Dewar <dewar@adacore.com> * bindgen.adb, switch-b.adb: Minor reformatting. 2010-06-23 Javier Miranda <miranda@adacore.com> * frontend.adb (Frontend): Add call to initialize the new package SCIL_LL. * exp_ch7.adb (Wrap_Transient_Expression): Remove call to Adjust_SCIL_Node. (Wrap_Transient_Statement): Remove call to Adjust_SCIL_Node. * sem_ch5.adb (Analyze_Iteration_Scheme.Process_Bounds): Remove call to Adjust_SCIL_Node. * exp_util.adb (Insert_Actions): Remove code for N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes. (Remove_Side_Effects): Remove calls to Adjust_SCIL_Node. * sinfo.adb (SCIL_Entity, SCIL_Tag_Value): Remove checks on N_SCIL_Tag_Init and N_SCIL_Dispatch_Table_Object_Init in the assertion. (SCIL_Related_Node, Set_SCIL_Related_Node): Removed. * sinfo.ads (SCIL_Related_Node): Field removed. (N_SCIL_Dispatch_Table_Object_Init): Node removed. (N_SCIL_Tag_Init): Node removed. * sem_scil.ads, sem_scil.adb (Adjust_SCIL_Node): Removed. (Check_SCIL_Node): New implementation. (Find_SCIL_Node): Removed. * sem.adb (Analyze): Remove management of N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes. * sem_util.adb (Insert_Explicit_Dereference): Remove call to Adjust_SCIL_Node. * exp_ch4.adb (Expand_N_In): Code cleanup: remove call to Set_SCIL_Related_Node and avoid adding the SCIL node before the referenced node using Insert_Action because this is not longer required. (Expand_Short_Circuit_Operator): Remove call to SCIL node. * exp_ch6.adb (Expand_Call): Remove call to Adjust_SCIL_Node. * sem_ch4.adb (Analyze_Type_Conversion): Remove call to Adjust_SCIL_Node * exp_disp.adb (Expand_Dispatching_Call): Minor code reorganization because we no longer require to generate the SCIL node before the call. (Make_DT): Remove generation of SCI_Dispatch_Table_Object_Init node. Remove calls to Set_SCIL_Related_Node and avoid adding the SCIL nodes before the referenced node using Insert_Action because this is not longer required. * atree.adb (Allocate_Initialize_Node, Replace, Rewrite): Add call to update the SCIL_Node field. * sprint.adb (Sprint_Node_Actual): Remove code for N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes. * treepr.adb (Print_Node): Print the SCIL node field (if available). * exp_ch3.adb (Build_Init_Procedure): Remove generation of SCIL_Tag_Init nodes. * scil_ll.ads, scil_ll.adb: New files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161244 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_util.adb')
-rw-r--r--gcc/ada/exp_util.adb30
1 files changed, 0 insertions, 30 deletions
diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb
index c6cc2d04d47..8d2f46ce1f5 100644
--- a/gcc/ada/exp_util.adb
+++ b/gcc/ada/exp_util.adb
@@ -43,7 +43,6 @@ with Rident; use Rident;
with Sem; use Sem;
with Sem_Aux; use Sem_Aux;
with Sem_Ch8; use Sem_Ch8;
-with Sem_SCIL; use Sem_SCIL;
with Sem_Eval; use Sem_Eval;
with Sem_Res; use Sem_Res;
with Sem_Type; use Sem_Type;
@@ -2812,11 +2811,9 @@ package body Exp_Util is
N_Real_Range_Specification |
N_Record_Definition |
N_Reference |
- N_SCIL_Dispatch_Table_Object_Init |
N_SCIL_Dispatch_Table_Tag_Init |
N_SCIL_Dispatching_Call |
N_SCIL_Membership_Test |
- N_SCIL_Tag_Init |
N_Selected_Component |
N_Signed_Integer_Type_Definition |
N_Single_Protected_Declaration |
@@ -4718,15 +4715,6 @@ package body Exp_Util is
Constant_Present => True,
Expression => Relocate_Node (Exp));
- -- Check if the previous node relocation requires readjustment of
- -- some SCIL Dispatching node.
-
- if Generate_SCIL
- and then Nkind (Exp) = N_Function_Call
- then
- Adjust_SCIL_Node (Exp, Expression (E));
- end if;
-
Set_Assignment_OK (E);
Insert_Action (Exp, E);
@@ -4888,15 +4876,6 @@ package body Exp_Util is
Object_Definition => New_Occurrence_Of (Exp_Type, Loc),
Expression => Relocate_Node (Exp));
- -- Check if the previous node relocation requires readjustment
- -- of some SCIL Dispatching node.
-
- if Generate_SCIL
- and then Nkind (Exp) = N_Function_Call
- then
- Adjust_SCIL_Node (Exp, Expression (Decl));
- end if;
-
Insert_Action (Exp, Decl);
Set_Etype (Obj, Exp_Type);
Rewrite (Exp, New_Occurrence_Of (Obj, Loc));
@@ -4956,15 +4935,6 @@ package body Exp_Util is
Defining_Identifier => Def_Id,
Object_Definition => New_Reference_To (Ref_Type, Loc),
Expression => New_Exp));
-
- -- Check if the previous node relocation requires readjustment
- -- of some SCIL Dispatching node.
-
- if Generate_SCIL
- and then Nkind (Exp) = N_Function_Call
- then
- Adjust_SCIL_Node (Exp, Prefix (New_Exp));
- end if;
end if;
-- Preserve the Assignment_OK flag in all copies, since at least