Package org.qbicc.plugin.opt
Class LocalMemoryTrackingBasicBlockBuilder
java.lang.Object
org.qbicc.graph.DelegatingBasicBlockBuilder
org.qbicc.plugin.opt.LocalMemoryTrackingBasicBlockBuilder
- All Implemented Interfaces:
Locatable,BasicBlockBuilder,ValueHandleVisitor<AccessMode,Value>
public class LocalMemoryTrackingBasicBlockBuilder
extends DelegatingBasicBlockBuilder
implements ValueHandleVisitor<AccessMode,Value>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.qbicc.graph.BasicBlockBuilder
BasicBlockBuilder.ExceptionHandler, BasicBlockBuilder.ExceptionHandlerPolicyNested classes/interfaces inherited from interface org.qbicc.graph.ValueHandleVisitor
ValueHandleVisitor.Delegating<T extends Object,R extends Object> -
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionLocalMemoryTrackingBasicBlockBuilder(CompilationContext ctxt, BasicBlockBuilder delegate) -
Method Summary
Modifier and TypeMethodDescriptionbegin(BlockLabel blockLabel) call(ValueHandle target, List<Value> arguments) callNoReturn(ValueHandle target, List<Value> arguments) cmpAndSwap(ValueHandle target, Value expect, Value update, ReadAccessMode readMode, WriteAccessMode writeMode, CmpAndSwap.Strength strength) fence(GlobalAccessMode fenceType) invoke(ValueHandle target, List<Value> arguments, BlockLabel catchLabel, BlockLabel resumeLabel) invokeNoReturn(ValueHandle target, List<Value> arguments, BlockLabel catchLabel) load(ValueHandle handle, ReadAccessMode accessMode) monitorEnter(Value obj) monitorExit(Value obj) readModifyWrite(ValueHandle target, ReadModifyWrite.Op op, Value update, ReadAccessMode readMode, WriteAccessMode writeMode) store(ValueHandle handle, Value value, WriteAccessMode accessMode) tailCall(ValueHandle target, List<Value> arguments) tailInvoke(ValueHandle target, List<Value> arguments, BlockLabel catchLabel) visit(AccessMode param, ElementOf node) visit(AccessMode param, MemberOf node) visitUnknown(AccessMode param, ValueHandle node) Methods inherited from class org.qbicc.graph.DelegatingBasicBlockBuilder
add, addressOf, and, asm, bitCast, bitReverse, byteSwap, callNoSideEffects, checkcast, checkcast, classOf, cmp, cmpG, cmpL, complement, constructorOf, constructorOf, countLeadingZeros, countTrailingZeros, currentThread, declareDebugAddress, divide, elementOf, exactMethodOf, exactMethodOf, extend, extractElement, extractInstanceField, extractInstanceField, extractMember, finish, functionOf, getBlockEntry, getCallSite, getCurrentElement, getDelegate, getExceptionHandler, getFirstBlock, getFirstBuilder, getLocation, getRootElement, getTerminatedBlock, globalVariable, goto_, if_, initCheck, insertElement, insertMember, instanceFieldOf, instanceFieldOf, instanceOf, instanceOf, interfaceMethodOf, interfaceMethodOf, isEq, isGe, isGt, isLe, isLt, isNe, jsr, lengthOf, localVariable, max, memberOf, min, multiNewArray, multiNewArray, multiply, negate, new_, new_, newArray, newArray, newReferenceArray, nop, notNull, offsetOfField, or, parameter, phi, pointerHandle, populationCount, referenceHandle, referenceTo, remainder, ret, return_, return_, rol, ror, select, selectMember, setBytecodeIndex, setCallSite, setCurrentElement, setDebugValue, setExceptionHandlerPolicy, setFirstBuilder, setLineNumber, shl, shr, stackAllocate, startMethod, staticField, staticField, staticMethod, staticMethod, sub, switch_, throw_, truncate, unreachable, unsafeHandle, vaArg, valueConvert, virtualMethodOf, virtualMethodOf, xorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.qbicc.graph.BasicBlockBuilder
constructorOf, exactMethodOf, interfaceMethodOf, load, pointerHandle, staticMethod, store, virtualMethodOf
-
Constructor Details
-
LocalMemoryTrackingBasicBlockBuilder
-
-
Method Details
-
begin
- Specified by:
beginin interfaceBasicBlockBuilder- Overrides:
beginin classDelegatingBasicBlockBuilder
-
load
- Specified by:
loadin interfaceBasicBlockBuilder- Overrides:
loadin classDelegatingBasicBlockBuilder
-
store
- Specified by:
storein interfaceBasicBlockBuilder- Overrides:
storein classDelegatingBasicBlockBuilder
-
readModifyWrite
public Value readModifyWrite(ValueHandle target, ReadModifyWrite.Op op, Value update, ReadAccessMode readMode, WriteAccessMode writeMode) - Specified by:
readModifyWritein interfaceBasicBlockBuilder- Overrides:
readModifyWritein classDelegatingBasicBlockBuilder
-
cmpAndSwap
public Value cmpAndSwap(ValueHandle target, Value expect, Value update, ReadAccessMode readMode, WriteAccessMode writeMode, CmpAndSwap.Strength strength) - Specified by:
cmpAndSwapin interfaceBasicBlockBuilder- Overrides:
cmpAndSwapin classDelegatingBasicBlockBuilder
-
fence
- Specified by:
fencein interfaceBasicBlockBuilder- Overrides:
fencein classDelegatingBasicBlockBuilder
-
monitorEnter
- Specified by:
monitorEnterin interfaceBasicBlockBuilder- Overrides:
monitorEnterin classDelegatingBasicBlockBuilder
-
monitorExit
- Specified by:
monitorExitin interfaceBasicBlockBuilder- Overrides:
monitorExitin classDelegatingBasicBlockBuilder
-
call
- Specified by:
callin interfaceBasicBlockBuilder- Overrides:
callin classDelegatingBasicBlockBuilder
-
callNoReturn
- Specified by:
callNoReturnin interfaceBasicBlockBuilder- Overrides:
callNoReturnin classDelegatingBasicBlockBuilder
-
invokeNoReturn
- Specified by:
invokeNoReturnin interfaceBasicBlockBuilder- Overrides:
invokeNoReturnin classDelegatingBasicBlockBuilder
-
tailCall
- Specified by:
tailCallin interfaceBasicBlockBuilder- Overrides:
tailCallin classDelegatingBasicBlockBuilder
-
tailInvoke
- Specified by:
tailInvokein interfaceBasicBlockBuilder- Overrides:
tailInvokein classDelegatingBasicBlockBuilder
-
invoke
public Value invoke(ValueHandle target, List<Value> arguments, BlockLabel catchLabel, BlockLabel resumeLabel) - Specified by:
invokein interfaceBasicBlockBuilder- Overrides:
invokein classDelegatingBasicBlockBuilder
-
visitUnknown
- Specified by:
visitUnknownin interfaceValueHandleVisitor<AccessMode,Value>
-
visit
- Specified by:
visitin interfaceValueHandleVisitor<AccessMode,Value>
-
visit
- Specified by:
visitin interfaceValueHandleVisitor<AccessMode,Value>
-