src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java

Print this page

        

*** 32,51 **** import java.util.List; import java.util.function.Consumer; import org.graalvm.compiler.asm.AbstractAddress; import org.graalvm.compiler.asm.Assembler; - import org.graalvm.compiler.core.common.NumUtil; import org.graalvm.compiler.code.CompilationResult; import org.graalvm.compiler.code.CompilationResult.CodeAnnotation; import org.graalvm.compiler.code.DataSection.Data; import org.graalvm.compiler.code.DataSection.RawData; import org.graalvm.compiler.core.common.cfg.AbstractBlockBase; import org.graalvm.compiler.core.common.spi.ForeignCallsProvider; import org.graalvm.compiler.core.common.type.DataPointerConstant; import org.graalvm.compiler.debug.Assertions; ! import org.graalvm.compiler.debug.Debug; import org.graalvm.compiler.debug.GraalError; import org.graalvm.compiler.graph.NodeSourcePosition; import org.graalvm.compiler.lir.LIR; import org.graalvm.compiler.lir.LIRFrameState; import org.graalvm.compiler.lir.LIRInstruction; --- 32,51 ---- import java.util.List; import java.util.function.Consumer; import org.graalvm.compiler.asm.AbstractAddress; import org.graalvm.compiler.asm.Assembler; import org.graalvm.compiler.code.CompilationResult; import org.graalvm.compiler.code.CompilationResult.CodeAnnotation; import org.graalvm.compiler.code.DataSection.Data; import org.graalvm.compiler.code.DataSection.RawData; + import org.graalvm.compiler.core.common.NumUtil; import org.graalvm.compiler.core.common.cfg.AbstractBlockBase; import org.graalvm.compiler.core.common.spi.ForeignCallsProvider; import org.graalvm.compiler.core.common.type.DataPointerConstant; import org.graalvm.compiler.debug.Assertions; ! import org.graalvm.compiler.debug.DebugContext; import org.graalvm.compiler.debug.GraalError; import org.graalvm.compiler.graph.NodeSourcePosition; import org.graalvm.compiler.lir.LIR; import org.graalvm.compiler.lir.LIRFrameState; import org.graalvm.compiler.lir.LIRInstruction;
*** 143,173 **** public final FrameContext frameContext; private List<ExceptionInfo> exceptionInfoList; private final OptionValues options; private final EconomicMap<Constant, Data> dataCache; private Consumer<LIRInstruction> beforeOp; private Consumer<LIRInstruction> afterOp; public CompilationResultBuilder(CodeCacheProvider codeCache, ForeignCallsProvider foreignCalls, FrameMap frameMap, Assembler asm, DataBuilder dataBuilder, FrameContext frameContext, ! OptionValues options, CompilationResult compilationResult) { ! this(codeCache, foreignCalls, frameMap, asm, dataBuilder, frameContext, options, compilationResult, EconomicMap.create(Equivalence.DEFAULT)); } public CompilationResultBuilder(CodeCacheProvider codeCache, ForeignCallsProvider foreignCalls, FrameMap frameMap, Assembler asm, DataBuilder dataBuilder, FrameContext frameContext, ! OptionValues options, CompilationResult compilationResult, EconomicMap<Constant, Data> dataCache) { this.target = codeCache.getTarget(); this.codeCache = codeCache; this.foreignCalls = foreignCalls; this.frameMap = frameMap; this.asm = asm; this.dataBuilder = dataBuilder; this.compilationResult = compilationResult; this.frameContext = frameContext; this.options = options; assert frameContext != null; this.dataCache = dataCache; if (dataBuilder.needDetailedPatchingInformation() || Assertions.ENABLED) { /* --- 143,175 ---- public final FrameContext frameContext; private List<ExceptionInfo> exceptionInfoList; private final OptionValues options; + private final DebugContext debug; private final EconomicMap<Constant, Data> dataCache; private Consumer<LIRInstruction> beforeOp; private Consumer<LIRInstruction> afterOp; public CompilationResultBuilder(CodeCacheProvider codeCache, ForeignCallsProvider foreignCalls, FrameMap frameMap, Assembler asm, DataBuilder dataBuilder, FrameContext frameContext, ! OptionValues options, DebugContext debug, CompilationResult compilationResult) { ! this(codeCache, foreignCalls, frameMap, asm, dataBuilder, frameContext, options, debug, compilationResult, EconomicMap.create(Equivalence.DEFAULT)); } public CompilationResultBuilder(CodeCacheProvider codeCache, ForeignCallsProvider foreignCalls, FrameMap frameMap, Assembler asm, DataBuilder dataBuilder, FrameContext frameContext, ! OptionValues options, DebugContext debug, CompilationResult compilationResult, EconomicMap<Constant, Data> dataCache) { this.target = codeCache.getTarget(); this.codeCache = codeCache; this.foreignCalls = foreignCalls; this.frameMap = frameMap; this.asm = asm; this.dataBuilder = dataBuilder; this.compilationResult = compilationResult; this.frameContext = frameContext; this.options = options; + this.debug = debug; assert frameContext != null; this.dataCache = dataCache; if (dataBuilder.needDetailedPatchingInformation() || Assertions.ENABLED) { /*
*** 261,280 **** } public void recordInlineDataInCode(Constant data) { assert data != null; int pos = asm.position(); ! Debug.log("Inline data in code: pos = %d, data = %s", pos, data); if (data instanceof VMConstant) { compilationResult.recordDataPatch(pos, new ConstantReference((VMConstant) data)); } } public void recordInlineDataInCodeWithNote(Constant data, Object note) { assert data != null; int pos = asm.position(); ! Debug.log("Inline data in code: pos = %d, data = %s, note = %s", pos, data, note); if (data instanceof VMConstant) { compilationResult.recordDataPatchWithNote(pos, new ConstantReference((VMConstant) data), note); } } --- 263,282 ---- } public void recordInlineDataInCode(Constant data) { assert data != null; int pos = asm.position(); ! debug.log("Inline data in code: pos = %d, data = %s", pos, data); if (data instanceof VMConstant) { compilationResult.recordDataPatch(pos, new ConstantReference((VMConstant) data)); } } public void recordInlineDataInCodeWithNote(Constant data, Object note) { assert data != null; int pos = asm.position(); ! debug.log("Inline data in code: pos = %d, data = %s, note = %s", pos, data, note); if (data instanceof VMConstant) { compilationResult.recordDataPatchWithNote(pos, new ConstantReference((VMConstant) data), note); } }
*** 290,300 **** return recordDataReferenceInCode(constant, constant.getAlignment()); } public AbstractAddress recordDataReferenceInCode(Constant constant, int alignment) { assert constant != null; ! Debug.log("Constant reference in code: pos = %d, data = %s", asm.position(), constant); Data data = dataCache.get(constant); if (data == null) { data = dataBuilder.createDataItem(constant); dataCache.put(constant, data); } --- 292,302 ---- return recordDataReferenceInCode(constant, constant.getAlignment()); } public AbstractAddress recordDataReferenceInCode(Constant constant, int alignment) { assert constant != null; ! debug.log("Constant reference in code: pos = %d, data = %s", asm.position(), constant); Data data = dataCache.get(constant); if (data == null) { data = dataBuilder.createDataItem(constant); dataCache.put(constant, data); }
*** 302,313 **** return recordDataSectionReference(data); } public AbstractAddress recordDataReferenceInCode(byte[] data, int alignment) { assert data != null; ! if (Debug.isLogEnabled()) { ! Debug.log("Data reference in code: pos = %d, data = %s", asm.position(), Arrays.toString(data)); } return recordDataSectionReference(new RawData(data, alignment)); } /** --- 304,315 ---- return recordDataSectionReference(data); } public AbstractAddress recordDataReferenceInCode(byte[] data, int alignment) { assert data != null; ! if (debug.isLogEnabled()) { ! debug.log("Data reference in code: pos = %d, data = %s", asm.position(), Arrays.toString(data)); } return recordDataSectionReference(new RawData(data, alignment)); } /**
*** 459,469 **** private void emitBlock(AbstractBlockBase<?> block) { if (block == null) { return; } ! boolean emitComment = Debug.isDumpEnabled(Debug.BASIC_LEVEL) || PrintLIRWithAssembly.getValue(getOptions()); if (emitComment) { blockComment(String.format("block B%d %s", block.getId(), block.getLoop())); } for (LIRInstruction op : lir.getLIRforBlock(block)) { --- 461,471 ---- private void emitBlock(AbstractBlockBase<?> block) { if (block == null) { return; } ! boolean emitComment = debug.isDumpEnabled(DebugContext.BASIC_LEVEL) || PrintLIRWithAssembly.getValue(getOptions()); if (emitComment) { blockComment(String.format("block B%d %s", block.getId(), block.getLoop())); } for (LIRInstruction op : lir.getLIRforBlock(block)) {
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/asm/CompilationResultBuilder.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File