Package org.qbicc.plugin.llvm
Class LLVMCompatibleBasicBlockBuilder
java.lang.Object
org.qbicc.graph.DelegatingBasicBlockBuilder
org.qbicc.plugin.llvm.LLVMCompatibleBasicBlockBuilder
- All Implemented Interfaces:
Locatable,ProgramLocatable,BasicBlockBuilder
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.qbicc.graph.BasicBlockBuilder
BasicBlockBuilder.FactoryContextNested classes/interfaces inherited from interface org.qbicc.context.ProgramLocatable
ProgramLocatable.Frozen -
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionLLVMCompatibleBasicBlockBuilder(BasicBlockBuilder.FactoryContext ctxt, BasicBlockBuilder delegate, LLVMConfiguration config) -
Method Summary
Modifier and TypeMethodDescriptionbitReverse(Value v) cmpAndSwap(Value pointer, Value expect, Value update, ReadAccessMode readMode, WriteAccessMode writeMode, CmpAndSwap.Strength strength) decodeReference(Value refVal, PointerType pointerType) encodeReference(Value pointer, ReferenceType referenceType) invoke(Value targetPtr, Value receiver, List<Value> arguments, BlockLabel catchLabel, BlockLabel resumeLabel, Map<Slot, Value> targetArguments) invokeNoReturn(Value targetPtr, Value receiver, List<Value> arguments, BlockLabel catchLabel, Map<Slot, Value> targetArguments) load(Value pointer, ReadAccessMode accessMode) offsetOfField(FieldElement fieldElement) pointerDifference(Value leftPointer, Value rightPointer) readModifyWrite(Value pointer, ReadModifyWrite.Op op, Value update, ReadAccessMode readMode, WriteAccessMode writeMode) store(Value pointer, Value value, WriteAccessMode accessMode) Methods inherited from class org.qbicc.graph.DelegatingBasicBlockBuilder
add, addParam, and, auto, begin, begin, bitCast, bytecodeIndex, byteOffsetPointer, call, callNoReturn, callNoSideEffects, callSite, checkcast, checkcast, classOf, cmp, cmpG, cmpL, complement, currentThread, declareDebugAddress, deref, divide, divisorCheck, element, elementOf, enterSafePoint, exitSafePoint, extend, extractElement, extractInstanceField, extractInstanceField, extractMember, fence, finish, fpToInt, getBlockEntry, getDelegate, getEntryLabel, getFirstBlock, getFirstBuilder, getLocation, getParam, getRootElement, getTerminatedBlock, goto_, if_, initCheck, initializeClass, insertElement, insertMember, instanceFieldOf, instanceFieldOf, instanceOf, instanceOf, intToFp, invokeDynamic, isEq, isGe, isGt, isLe, isLt, isNe, lineNumber, loadLength, loadTypeId, lookupInterfaceMethod, lookupInterfaceMethod, lookupVirtualMethod, lookupVirtualMethod, memberOf, memberOfUnion, monitorEnter, monitorExit, multiNewArray, multiNewArray, multiply, new_, new_, newArray, newArray, newReferenceArray, nop, nullCheck, offsetPointer, or, pollSafePoint, reachable, receiverBound, remainder, resolveConstructor, resolveInstanceMethod, resolveStaticField, resolveStaticMethod, ret, return_, rol, ror, select, setBytecodeIndex, setCallSite, setCurrentElement, setDebugValue, setFirstBuilder, setLineNumber, shl, shr, stackAllocate, sub, switch_, threadBound, throw_, truncate, vaArg, 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
addParam, begin, call, callNoReturn, callNoSideEffects, classOf, classOf, classOf, classOf, classOf, classOf, classOf, classOf, decodeReference, emptyVoid, encodeReference, getContext, getCurrentClassContext, getLiteralFactory, getTypeSystem, goto_, instanceOf, invoke, invokeNoReturn, load, return_, store, tailCallMethods inherited from interface org.qbicc.context.ProgramLocatable
enclosingType, freeze, sourceFileName, withUnderlyingCallSite
-
Constructor Details
-
LLVMCompatibleBasicBlockBuilder
public LLVMCompatibleBasicBlockBuilder(BasicBlockBuilder.FactoryContext ctxt, BasicBlockBuilder delegate, LLVMConfiguration config)
-
-
Method Details
-
decodeReference
- Specified by:
decodeReferencein interfaceBasicBlockBuilder- Overrides:
decodeReferencein classDelegatingBasicBlockBuilder
-
encodeReference
- Specified by:
encodeReferencein interfaceBasicBlockBuilder- Overrides:
encodeReferencein classDelegatingBasicBlockBuilder
-
min
- Specified by:
minin interfaceBasicBlockBuilder- Overrides:
minin classDelegatingBasicBlockBuilder
-
max
- Specified by:
maxin interfaceBasicBlockBuilder- Overrides:
maxin classDelegatingBasicBlockBuilder
-
byteSwap
- Specified by:
byteSwapin interfaceBasicBlockBuilder- Overrides:
byteSwapin classDelegatingBasicBlockBuilder
-
bitReverse
- Specified by:
bitReversein interfaceBasicBlockBuilder- Overrides:
bitReversein classDelegatingBasicBlockBuilder
-
countLeadingZeros
- Specified by:
countLeadingZerosin interfaceBasicBlockBuilder- Overrides:
countLeadingZerosin classDelegatingBasicBlockBuilder
-
countTrailingZeros
- Specified by:
countTrailingZerosin interfaceBasicBlockBuilder- Overrides:
countTrailingZerosin classDelegatingBasicBlockBuilder
-
populationCount
- Specified by:
populationCountin interfaceBasicBlockBuilder- Overrides:
populationCountin classDelegatingBasicBlockBuilder
-
negate
- Specified by:
negatein interfaceBasicBlockBuilder- Overrides:
negatein classDelegatingBasicBlockBuilder
-
offsetOfField
- Specified by:
offsetOfFieldin interfaceBasicBlockBuilder- Overrides:
offsetOfFieldin classDelegatingBasicBlockBuilder
-
pointerDifference
- Specified by:
pointerDifferencein interfaceBasicBlockBuilder- Overrides:
pointerDifferencein classDelegatingBasicBlockBuilder
-
load
- Specified by:
loadin interfaceBasicBlockBuilder- Overrides:
loadin classDelegatingBasicBlockBuilder
-
unreachable
- Specified by:
unreachablein interfaceBasicBlockBuilder- Overrides:
unreachablein classDelegatingBasicBlockBuilder
-
store
- Specified by:
storein interfaceBasicBlockBuilder- Overrides:
storein classDelegatingBasicBlockBuilder
-
cmpAndSwap
public Value cmpAndSwap(Value pointer, Value expect, Value update, ReadAccessMode readMode, WriteAccessMode writeMode, CmpAndSwap.Strength strength) - Specified by:
cmpAndSwapin interfaceBasicBlockBuilder- Overrides:
cmpAndSwapin classDelegatingBasicBlockBuilder
-
readModifyWrite
public Value readModifyWrite(Value pointer, ReadModifyWrite.Op op, Value update, ReadAccessMode readMode, WriteAccessMode writeMode) - Specified by:
readModifyWritein interfaceBasicBlockBuilder- Overrides:
readModifyWritein classDelegatingBasicBlockBuilder
-
tailCall
- Specified by:
tailCallin interfaceBasicBlockBuilder- Overrides:
tailCallin classDelegatingBasicBlockBuilder
-
invokeNoReturn
public BasicBlock invokeNoReturn(Value targetPtr, Value receiver, List<Value> arguments, BlockLabel catchLabel, Map<Slot, Value> targetArguments) - Specified by:
invokeNoReturnin interfaceBasicBlockBuilder- Overrides:
invokeNoReturnin classDelegatingBasicBlockBuilder
-
invoke
public Value invoke(Value targetPtr, Value receiver, List<Value> arguments, BlockLabel catchLabel, BlockLabel resumeLabel, Map<Slot, Value> targetArguments) - Specified by:
invokein interfaceBasicBlockBuilder- Overrides:
invokein classDelegatingBasicBlockBuilder
-
notNull
- Specified by:
notNullin interfaceBasicBlockBuilder- Overrides:
notNullin classDelegatingBasicBlockBuilder
-