[Mono-bugs] [Bug 60673][Wis] Changed - [PATCH] -O=loop sometimes adds padding in wrong places

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Thu, 24 Jun 2004 14:51:08 -0400 (EDT)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by bmaurer@users.sf.net.

http://bugzilla.ximian.com/show_bug.cgi?id=60673

--- shadow/60673	2004-06-24 14:49:13.000000000 -0400
+++ shadow/60673.tmp.30545	2004-06-24 14:51:08.000000000 -0400
@@ -1,23 +1,23 @@
 Bug#: 60673
 Product: Mono: Runtime
 Version: unspecified
-OS: 
+OS: unknown
 OS Details: 
 Status: NEW   
 Resolution: 
-Severity: 
+Severity: Unknown
 Priority: Wishlist
 Component: misc
 AssignedTo: mono-bugs@ximian.com                            
 ReportedBy: bmaurer@users.sf.net               
 QAContact: mono-bugs@ximian.com
 TargetMilestone: ---
 URL: 
 Cc: 
-Summary: -O=loop sometimes adds padding in wrong places
+Summary: [PATCH] -O=loop sometimes adds padding in wrong places
 
 Consider this code:
 
 using System;
 class T {
 	static void Main () {
@@ -68,6 +68,21 @@
  alignment should not be added.
 
 ------- Additional Comments From bmaurer@users.sf.net  2004-06-24 14:49 -------
 Created an attachment (id=8335)
 patch
 
+
+------- Additional Comments From bmaurer@users.sf.net  2004-06-24 14:51 -------
+Before, the runtime would insert padding for any block in a loop with
+only one in block. However, what really should be done is that a block
+that is the head of a loop should get padding.
+
+This gives us a pretty large boost in some benchmarks:
+[benm@164-99-120-44 benchmark]$ /usr/bin/time  mono zipmark.exe
+/usr/share/dict/words 100
+0.02user 0.00system 0:46.17elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k
+0inputs+0outputs (1major+897minor)pagefaults 0swaps
+[benm@164-99-120-44 benchmark]$ /usr/bin/time  ../mini/mono
+zipmark.exe /usr/share/dict/words 100
+0.02user 0.00system 0:28.37elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k
+0inputs+0outputs (1major+2588minor)pagefaults 0swaps