[m-rev.] diff: add `tail.' prefixes to runtime/mercury_il.il

Fergus Henderson fjh at cs.mu.OZ.AU
Tue Mar 12 01:13:49 AEDT 2002


Branches: main
Estimated hours taken: 0.25

runtime/mercury_il.il:
	Add tail call annotations ("tail.") in appropriate places.

Workspace: /home/venus/fjh/ws-venus4/mercury
Index: runtime/mercury_il.il
===================================================================
RCS file: /home/mercury1/repository/mercury/runtime/mercury_il.il,v
retrieving revision 1.13
diff -u -d -r1.13 mercury_il.il
--- runtime/mercury_il.il	8 Feb 2002 10:42:58 -0000	1.13
+++ runtime/mercury_il.il	11 Mar 2002 12:11:44 -0000
@@ -355,6 +355,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -370,6 +371,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -385,6 +387,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -402,6 +405,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -420,6 +424,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -441,6 +446,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	tail.
 	calli	int32 (class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -459,6 +465,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object[]&, class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
 }
@@ -475,6 +482,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object, class [mscorlib]System.Object[]&,
 		class [mscorlib]System.Object, class [mscorlib]System.Object)
 	ret
@@ -494,6 +502,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object,
 		class [mscorlib]System.Object, class [mscorlib]System.Object[]&,
 		class [mscorlib]System.Object, class [mscorlib]System.Object)
@@ -515,6 +524,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object, class [mscorlib]System.Object,
 		class [mscorlib]System.Object, class [mscorlib]System.Object[]&,
 		class [mscorlib]System.Object, class [mscorlib]System.Object)
@@ -537,6 +547,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object, class [mscorlib]System.Object,
 		class [mscorlib]System.Object,
 		class [mscorlib]System.Object, class [mscorlib]System.Object[]&,
@@ -562,6 +573,7 @@
 	ldarg 'procedure'
 	unbox int32
 	ldobj int32
+	// using tail. here is not verifiable due to the byref argument
 	calli	void (class [mscorlib]System.Object, class [mscorlib]System.Object,
 		class [mscorlib]System.Object, class [mscorlib]System.Object,
 		class [mscorlib]System.Object, class [mscorlib]System.Object[]&,
@@ -578,6 +590,7 @@
 
 .class public 'Init' {
     .method public static default void init_runtime() {
+        tail.
         call void ['mercury']mercury.io.mercury_code::init_state_2()
 	ret
     }

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list