diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2019-08-13 08:08:11 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2019-08-13 08:08:11 +0000 |
commit | 49209838d35fbf7a130738be6eb0c281a40e8f20 (patch) | |
tree | ac6436df178f213ee10ea420e35687fa567137c8 /gcc/ada/sem_ch12.ads | |
parent | 063907abadf6ee9ffe4d60d4b61eb8a144aa29f7 (diff) | |
download | gcc-49209838d35fbf7a130738be6eb0c281a40e8f20.zip gcc-49209838d35fbf7a130738be6eb0c281a40e8f20.tar.gz gcc-49209838d35fbf7a130738be6eb0c281a40e8f20.tar.bz2 |
[Ada] Small cleanup and improvement in inlining machinery
This is a small cleanup in the inlining machinery of the front-end
dealing with back-end inlining. It should save a few cycles at -O0 by
stopping it from doing useless work. No functional changes.
2019-08-13 Eric Botcazou <ebotcazou@adacore.com>
gcc/ada/
* exp_ch6.adb: Remove with and use clauses for Sem_Ch12.
(Expand_Call_Helper): Swap the back-end inlining case and the
special front-end expansion case. In back-end inlining mode, do
not invoke Add_Inlined_Body unless the call may be inlined.
* inline.ads (Add_Pending_Instantiation): New function moved
from...
* inline.adb (Add_Inlined_Body): Simplify comment. Turn test on
the enclosing unit into assertion.
(Add_Pending_Instantiation): New function moved from...
* sem_ch12.ads (Add_Pending_Instantiation): ...here.
* sem_ch12.adb (Add_Pending_Instantiation): ...here.
From-SVN: r274353
Diffstat (limited to 'gcc/ada/sem_ch12.ads')
-rw-r--r-- | gcc/ada/sem_ch12.ads | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/gcc/ada/sem_ch12.ads b/gcc/ada/sem_ch12.ads index 9c71368..f0b72f4 100644 --- a/gcc/ada/sem_ch12.ads +++ b/gcc/ada/sem_ch12.ads @@ -37,10 +37,6 @@ package Sem_Ch12 is procedure Analyze_Formal_Subprogram_Declaration (N : Node_Id); procedure Analyze_Formal_Package_Declaration (N : Node_Id); - procedure Add_Pending_Instantiation (Inst : Node_Id; Act_Decl : Node_Id); - -- Add an entry in the table of instance bodies that must be analyzed - -- when inlining requires its body or the body of a nested instance. - function Build_Function_Wrapper (Formal_Subp : Entity_Id; Actual_Subp : Entity_Id) return Node_Id; |