diff mbox series

[Ada] Unbounded strings: inline Initialize and Adjust

Message ID 20180525090625.GA34582@adacore.com
State New
Headers show
Series [Ada] Unbounded strings: inline Initialize and Adjust | expand

Commit Message

Pierre-Marie de Rodat May 25, 2018, 9:06 a.m. UTC
Procedures Initialize and Adjust in the Ada.[Wide_[Wide_]]Strings.Unbounded
package are now inlined for nondispatching calls. No test available (efficiency
issue only).

Tested on x86_64-pc-linux-gnu, committed on trunk

2018-05-25  Bob Duff  <duff@adacore.com>

gcc/ada/

	* libgnat/a-strunb__shared.ads, libgnat/a-stwiun__shared.ads,
	libgnat/a-stzunb__shared.ads: (Initialize, Adjust): Add pragma Inline.
diff mbox series

Patch

--- gcc/ada/libgnat/a-strunb__shared.ads
+++ gcc/ada/libgnat/a-strunb__shared.ads
@@ -482,6 +482,7 @@  private
    overriding procedure Initialize (Object : in out Unbounded_String);
    overriding procedure Adjust     (Object : in out Unbounded_String);
    overriding procedure Finalize   (Object : in out Unbounded_String);
+   pragma Inline (Initialize, Adjust);
 
    Null_Unbounded_String : constant Unbounded_String :=
                              (AF.Controlled with

--- gcc/ada/libgnat/a-stwiun__shared.ads
+++ gcc/ada/libgnat/a-stwiun__shared.ads
@@ -485,6 +485,7 @@  private
    overriding procedure Initialize (Object : in out Unbounded_Wide_String);
    overriding procedure Adjust     (Object : in out Unbounded_Wide_String);
    overriding procedure Finalize   (Object : in out Unbounded_Wide_String);
+   pragma Inline (Initialize, Adjust);
 
    Null_Unbounded_Wide_String : constant Unbounded_Wide_String :=
                                   (AF.Controlled with

--- gcc/ada/libgnat/a-stzunb__shared.ads
+++ gcc/ada/libgnat/a-stzunb__shared.ads
@@ -503,6 +503,7 @@  private
      (Object : in out Unbounded_Wide_Wide_String);
    overriding procedure Finalize
      (Object : in out Unbounded_Wide_Wide_String);
+   pragma Inline (Initialize, Adjust);
 
    Null_Unbounded_Wide_Wide_String : constant Unbounded_Wide_Wide_String :=
                                        (AF.Controlled with