Revision: 15683
http://jikesrvm.svn.sourceforge.net/jikesrvm/?rev=15683&view=revAuthor: dgrove-oss
Date: 2009-05-07 17:48:22 +0000 (Thu, 07 May 2009)
Log Message:
-----------
RVM-744 : Terminal not in Grammer READ_CEILING
Fix IA32 BURS rules and Assembler to handle READ_CEILING/WRITE_FLOOR instructions. These instructions can be introduced on IA32 via elimination of monitorenter/exit by escape transformations even though there is no IA32 magic that cases them to be generated.
Modified Paths:
--------------
rvmroot/trunk/rvm/src/org/jikesrvm/compilers/opt/mir2mc/ia32/AssemblerBase.java
rvmroot/trunk/rvm/src-generated/opt-burs/ia32/IA32.rules
Modified: rvmroot/trunk/rvm/src/org/jikesrvm/compilers/opt/mir2mc/ia32/AssemblerBase.java
===================================================================
--- rvmroot/trunk/rvm/src/org/jikesrvm/compilers/opt/mir2mc/ia32/AssemblerBase.java 2009-05-07 12:54:35 UTC (rev 15682)
+++ rvmroot/trunk/rvm/src/org/jikesrvm/compilers/opt/mir2mc/ia32/AssemblerBase.java 2009-05-07 17:48:22 UTC (rev 15683)
@@ -671,6 +671,8 @@
case LABEL_opcode:
return (4 - offset) & 3; // return size of nop required for alignment
case BBEND_opcode:
+ case READ_CEILING_opcode:
+ case WRITE_FLOOR_opcode:
case UNINT_BEGIN_opcode:
case UNINT_END_opcode: {
// these generate no code
Modified: rvmroot/trunk/rvm/src-generated/opt-burs/ia32/IA32.rules
===================================================================
--- rvmroot/trunk/rvm/src-generated/opt-burs/ia32/IA32.rules 2009-05-07 12:54:35 UTC (rev 15682)
+++ rvmroot/trunk/rvm/src-generated/opt-burs/ia32/IA32.rules 2009-05-07 17:48:22 UTC (rev 15683)
@@ -2549,6 +2549,22 @@
EMIT(MIR_CacheOp.mutate(P(p), IA32_PREFETCHNTA, R(CacheOp.getRef(P(p)))));
#####
+# WRITE_FLOOR
+#####
+stm: WRITE_FLOOR
+11
+EMIT_INSTRUCTION
+EMIT(P(p)); // Pass through to maintain barrier semantics for code motion
+
+#####
+# READ_CEILING
+#####
+stm: READ_CEILING
+11
+EMIT_INSTRUCTION
+EMIT(P(p)); // Pass through to maintain barrier semantics for code motion
+
+#####
# PAUSE
#####
stm: PAUSE
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image
processing features enabled.
http://p.sf.net/sfu/kodak-com_______________________________________________
Jikesrvm-commits mailing list
Jikesrvm-commits@...
https://lists.sourceforge.net/lists/listinfo/jikesrvm-commits