graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/BitOpNodesTest.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File basic-graal Sdiff graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test

graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/BitOpNodesTest.java

Print this page




 147 
 148     public static int scanForwardLongSnippet(long v) {
 149         return Long.numberOfTrailingZeros(v & 0xFFFF000000L | 0xFF00000000L);
 150     }
 151 
 152     @Test
 153     public void testScanForwardLong() {
 154         ValueNode result = parseAndInline("scanForwardLongSnippet");
 155         Assert.assertEquals(StampFactory.forInteger(Kind.Int, 24, 32), result.stamp());
 156     }
 157 
 158     public static int scanForwardLongEmptySnippet(long v) {
 159         int result = Long.numberOfTrailingZeros(v & 0xFFFF000000L);
 160         dummyField = result;
 161         return result;
 162     }
 163 
 164     @Test
 165     public void testScanForwardLongEmpty() {
 166         ValueNode result = parseAndInline("scanForwardLongEmptySnippet");
 167         Assert.assertEquals(StampFactory.forInteger(Kind.Int, -1, 64), result.stamp());
 168     }
 169 
 170     /*
 171      * Tests for BitScanReverseNode
 172      */
 173 
 174     public static int scanReverseIntConstantSnippet() {
 175         return Integer.numberOfLeadingZeros(INT_CONSTANT_1) + Integer.numberOfLeadingZeros(INT_CONSTANT_2) + Integer.numberOfLeadingZeros(INT_CONSTANT_3);
 176     }
 177 
 178     @Test
 179     public void testScanReverseIntConstant() {
 180         ValueNode result = parseAndInline("scanReverseIntConstantSnippet");
 181         Assert.assertEquals(47, result.asJavaConstant().asInt());
 182     }
 183 
 184     public static int scanReverseIntSnippet(int v) {
 185         return Integer.numberOfLeadingZeros(v & 0xFFF0 | 0xFF0);
 186     }
 187 




 147 
 148     public static int scanForwardLongSnippet(long v) {
 149         return Long.numberOfTrailingZeros(v & 0xFFFF000000L | 0xFF00000000L);
 150     }
 151 
 152     @Test
 153     public void testScanForwardLong() {
 154         ValueNode result = parseAndInline("scanForwardLongSnippet");
 155         Assert.assertEquals(StampFactory.forInteger(Kind.Int, 24, 32), result.stamp());
 156     }
 157 
 158     public static int scanForwardLongEmptySnippet(long v) {
 159         int result = Long.numberOfTrailingZeros(v & 0xFFFF000000L);
 160         dummyField = result;
 161         return result;
 162     }
 163 
 164     @Test
 165     public void testScanForwardLongEmpty() {
 166         ValueNode result = parseAndInline("scanForwardLongEmptySnippet");
 167         Assert.assertEquals(StampFactory.forInteger(Kind.Int, 24, 64), result.stamp());
 168     }
 169 
 170     /*
 171      * Tests for BitScanReverseNode
 172      */
 173 
 174     public static int scanReverseIntConstantSnippet() {
 175         return Integer.numberOfLeadingZeros(INT_CONSTANT_1) + Integer.numberOfLeadingZeros(INT_CONSTANT_2) + Integer.numberOfLeadingZeros(INT_CONSTANT_3);
 176     }
 177 
 178     @Test
 179     public void testScanReverseIntConstant() {
 180         ValueNode result = parseAndInline("scanReverseIntConstantSnippet");
 181         Assert.assertEquals(47, result.asJavaConstant().asInt());
 182     }
 183 
 184     public static int scanReverseIntSnippet(int v) {
 185         return Integer.numberOfLeadingZeros(v & 0xFFF0 | 0xFF0);
 186     }
 187 


graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/BitOpNodesTest.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File