# HG changeset patch # User Tom Rodriguez # Date 1387218137 28800 # Node ID 7345e9672dc33e3cd40f589edc38ad7d23dbd629 # Parent 2c3b59f346199113c8b2a90c5c0d739090b71826 refactor computation of architecture features diff -r 2c3b59f34619 -r 7345e9672dc3 graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackendFactory.java --- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackendFactory.java Mon Dec 16 09:31:19 2013 -0800 +++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackendFactory.java Mon Dec 16 10:22:17 2013 -0800 @@ -37,6 +37,10 @@ public class AMD64HotSpotBackendFactory implements HotSpotBackendFactory { protected Architecture createArchitecture(HotSpotVMConfig config) { + return new AMD64(computeFeatures(config)); + } + + protected EnumSet computeFeatures(HotSpotVMConfig config) { // Configure the feature set using the HotSpot flag settings. EnumSet features = EnumSet.noneOf(AMD64.CPUFeature.class); assert config.useSSE >= 2 : "minimum config for x64"; @@ -66,8 +70,7 @@ if (config.allocatePrefetchInstr == 3) { features.add(AMD64.CPUFeature.AMD_3DNOW_PREFETCH); } - - return new AMD64(features); + return features; } protected TargetDescription createTarget(HotSpotVMConfig config) {