Mercurial > hg > truffle
comparison graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotSafepointOp.java @ 19526:8fc336a04d77
Create TYPE fields for LIRInstruction and CompositeValue. Renaming NodeClass#get to NodeClass#create.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Fri, 20 Feb 2015 22:22:55 +0100 |
parents | 4ccd6b6b6780 |
children | 96ab2078eeaf |
comparison
equal
deleted
inserted
replaced
19525:35481bcb5882 | 19526:8fc336a04d77 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
41 /** | 41 /** |
42 * Emits a safepoint poll. | 42 * Emits a safepoint poll. |
43 */ | 43 */ |
44 @Opcode("SAFEPOINT") | 44 @Opcode("SAFEPOINT") |
45 public class SPARCHotSpotSafepointOp extends SPARCLIRInstruction { | 45 public class SPARCHotSpotSafepointOp extends SPARCLIRInstruction { |
46 public static final LIRInstructionClass<SPARCHotSpotSafepointOp> TYPE = LIRInstructionClass.create(SPARCHotSpotSafepointOp.class); | |
46 | 47 |
47 @State protected LIRFrameState state; | 48 @State protected LIRFrameState state; |
48 @SuppressFBWarnings(value = "BC_IMPOSSIBLE_CAST", justification = "changed by the register allocator") @Temp({OperandFlag.REG}) private AllocatableValue temp; | 49 @SuppressFBWarnings(value = "BC_IMPOSSIBLE_CAST", justification = "changed by the register allocator") @Temp({OperandFlag.REG}) private AllocatableValue temp; |
49 | 50 |
50 private final HotSpotVMConfig config; | 51 private final HotSpotVMConfig config; |
51 | 52 |
52 public SPARCHotSpotSafepointOp(LIRFrameState state, HotSpotVMConfig config, LIRGeneratorTool tool) { | 53 public SPARCHotSpotSafepointOp(LIRFrameState state, HotSpotVMConfig config, LIRGeneratorTool tool) { |
54 super(TYPE); | |
53 this.state = state; | 55 this.state = state; |
54 this.config = config; | 56 this.config = config; |
55 temp = tool.newVariable(LIRKind.value(tool.target().wordKind)); | 57 this.temp = tool.newVariable(LIRKind.value(tool.target().wordKind)); |
56 } | 58 } |
57 | 59 |
58 @Override | 60 @Override |
59 public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) { | 61 public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) { |
60 Register scratch = ((RegisterValue) temp).getRegister(); | 62 Register scratch = ((RegisterValue) temp).getRegister(); |