Path: blob/aarch64-shenandoah-jdk8u272-b10/hotspot/test/aarch64/IntLogicTests.java
32282 views
public class IntLogicTests {12private static int test_and(int a, int b) {3return a & b;4}56private static int test_andc1(int a) {7// Generates immediate instruction.8return a & 0xf0f0f0f0;9}1011private static int test_andc2(int a) {12// Generates non-immediate instruction.13return a & 0x123456d5;14}1516private static int test_or(int a, int b) {17return a | b;18}1920private static int test_orc1(int a) {21// Generates immediate instruction.22return a | 0xf0f0f0f0;23}2425private static int test_orc2(int a) {26// Generates non-immediate instruction.27return a | 0x123456d5;28}2930private static int test_xor(int a, int b) {31return a ^ b;32}3334private static int test_xorc1(int a) {35// Generates immediate instruction.36return a ^ 0xf0f0f0f0;37}3839private static int test_xorc2(int a) {40// Generates non-immediate instruction.41return a ^ 0x123456d5;42}4344private static void assertThat(boolean assertion) {45if (! assertion) {46throw new AssertionError();47}48}4950public static void main(String[] args) {5152assertThat(test_and(0x21, 0x31) == 0x21);53assertThat(test_andc1(0xaaaaaaaa) == 0xa0a0a0a0);54assertThat(test_andc2(0xaaaaaaaa) == 0x02200280);5556assertThat(test_or(0x21, 0x31) == 0x31);57assertThat(test_orc1(0xaaaaaaaa) == 0xfafafafa);58assertThat(test_orc2(0xaaaaaaaa) == 0xbabefeff);5960assertThat(test_xor(0x21, 0x31) == 16);61assertThat(test_xorc1(0xaaaaaaaa) == 0x5a5a5a5a);62assertThat(test_xorc2(0xaaaaaaaa) == 0xb89efc7f);63}64}656667