Mercurial > hg > graal-jvmci-8
comparison graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java @ 18415:6dc4f0be9a70
Add support of lzcnt and tzcnt
- support of lzcnt and tzcnt instructions,
- unit tests for lzcnt/tzcnt,
- ability to emit bsf/bsr in case lzcnt/tzcnt were turned off from the command line,
- tightening the stamps produced by ScanBitForward/ReverseNode nodes.
Contributed-By: Igor Veresov <igor.veresov@oracle.com>
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Wed, 19 Nov 2014 13:32:05 +0100 |
parents | b9f2356c3a69 |
children | c640f804dbad |
comparison
equal
deleted
inserted
replaced
18414:df8d52aba789 | 18415:6dc4f0be9a70 |
---|---|
724 | 724 |
725 @HotSpotVMFlag(name = "UseTLAB") @Stable public boolean useTLAB; | 725 @HotSpotVMFlag(name = "UseTLAB") @Stable public boolean useTLAB; |
726 @HotSpotVMFlag(name = "UseBiasedLocking") @Stable public boolean useBiasedLocking; | 726 @HotSpotVMFlag(name = "UseBiasedLocking") @Stable public boolean useBiasedLocking; |
727 @HotSpotVMFlag(name = "UsePopCountInstruction") @Stable public boolean usePopCountInstruction; | 727 @HotSpotVMFlag(name = "UsePopCountInstruction") @Stable public boolean usePopCountInstruction; |
728 @HotSpotVMFlag(name = "UseCountLeadingZerosInstruction", archs = {"amd64"}) @Stable public boolean useCountLeadingZerosInstruction; | 728 @HotSpotVMFlag(name = "UseCountLeadingZerosInstruction", archs = {"amd64"}) @Stable public boolean useCountLeadingZerosInstruction; |
729 @HotSpotVMFlag(name = "UseCountTrailingZerosInstruction", archs = {"amd64"}) @Stable public boolean useCountTrailingZerosInstruction; | |
729 @HotSpotVMFlag(name = "UseAESIntrinsics") @Stable public boolean useAESIntrinsics; | 730 @HotSpotVMFlag(name = "UseAESIntrinsics") @Stable public boolean useAESIntrinsics; |
730 @HotSpotVMFlag(name = "UseCRC32Intrinsics") @Stable public boolean useCRC32Intrinsics; | 731 @HotSpotVMFlag(name = "UseCRC32Intrinsics") @Stable public boolean useCRC32Intrinsics; |
731 @HotSpotVMFlag(name = "UseG1GC") @Stable public boolean useG1GC; | 732 @HotSpotVMFlag(name = "UseG1GC") @Stable public boolean useG1GC; |
732 @HotSpotVMFlag(name = "UseConcMarkSweepGC") @Stable public boolean useCMSGC; | 733 @HotSpotVMFlag(name = "UseConcMarkSweepGC") @Stable public boolean useCMSGC; |
733 | 734 |
792 @HotSpotVMConstant(name = "VM_Version::CPU_AVX", archs = {"amd64"}) @Stable public int cpuAVX; | 793 @HotSpotVMConstant(name = "VM_Version::CPU_AVX", archs = {"amd64"}) @Stable public int cpuAVX; |
793 @HotSpotVMConstant(name = "VM_Version::CPU_AVX2", archs = {"amd64"}) @Stable public int cpuAVX2; | 794 @HotSpotVMConstant(name = "VM_Version::CPU_AVX2", archs = {"amd64"}) @Stable public int cpuAVX2; |
794 @HotSpotVMConstant(name = "VM_Version::CPU_AES", archs = {"amd64"}) @Stable public int cpuAES; | 795 @HotSpotVMConstant(name = "VM_Version::CPU_AES", archs = {"amd64"}) @Stable public int cpuAES; |
795 @HotSpotVMConstant(name = "VM_Version::CPU_ERMS", archs = {"amd64"}) @Stable public int cpuERMS; | 796 @HotSpotVMConstant(name = "VM_Version::CPU_ERMS", archs = {"amd64"}) @Stable public int cpuERMS; |
796 @HotSpotVMConstant(name = "VM_Version::CPU_CLMUL", archs = {"amd64"}) @Stable public int cpuCLMUL; | 797 @HotSpotVMConstant(name = "VM_Version::CPU_CLMUL", archs = {"amd64"}) @Stable public int cpuCLMUL; |
798 @HotSpotVMConstant(name = "VM_Version::CPU_BMI1", archs = {"amd64"}) @Stable public int cpuBMI1; | |
797 | 799 |
798 // SPARC specific values | 800 // SPARC specific values |
799 @HotSpotVMField(name = "VM_Version::_features", type = "int", get = HotSpotVMField.Type.VALUE, archs = {"sparc"}) @Stable public int sparcFeatures; | 801 @HotSpotVMField(name = "VM_Version::_features", type = "int", get = HotSpotVMField.Type.VALUE, archs = {"sparc"}) @Stable public int sparcFeatures; |
800 @HotSpotVMConstant(name = "VM_Version::vis3_instructions_m", archs = {"sparc"}) @Stable public int vis3Instructions; | 802 @HotSpotVMConstant(name = "VM_Version::vis3_instructions_m", archs = {"sparc"}) @Stable public int vis3Instructions; |
801 @HotSpotVMConstant(name = "VM_Version::vis2_instructions_m", archs = {"sparc"}) @Stable public int vis2Instructions; | 803 @HotSpotVMConstant(name = "VM_Version::vis2_instructions_m", archs = {"sparc"}) @Stable public int vis2Instructions; |