Class Entrypoint
java.lang.Object
com.aparapi.internal.model.Entrypoint
- All Implemented Interfaces:
Cloneable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final HashMap<String, ClassModel> private final List<MethodModel> private ClassModelprivate Objectprivate static Loggerprivate final MethodModelprivate final HashMap<String, ClassModel> private final List<ClassModel.ClassModelField> private booleanTrue is an indication to use the atomics pragmasprivate booleanprivate booleanTrue is an indication to use the byte addressable store pragmaprivate booleanTrue is an indication to use the fp64 pragma -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) EntrypointcloneForKernel(Object _k) getCallTarget(ClassModel.ConstantPool.MethodEntry _methodEntry, boolean _isSpecial) static FieldgetFieldFromClassHierarchy(Class<?> _clazz, String _name) getOrUpdateAllClassAccesses(String className) getSimpleGetterField(MethodModel method) private booleanbooleanbooleanbooleanbooleanresolveAccessorCandidate(InstructionSet.MethodCall _methodCall, ClassModel.ConstantPool.MethodEntry _methodEntry) (package private) ClassModel.ClassModelMethodresolveCalledMethod(InstructionSet.MethodCall methodCall, ClassModel classModel) voidvoidsetRequiresAtomics32Pragma(boolean newVal) voidsetRequiresAtomics64Pragma(boolean newVal) voidupdateObjectMemberFieldAccesses(String className, ClassModel.ConstantPool.FieldEntry field)
-
Field Details
-
logger
-
referencedClassModelFields
-
referencedFields
-
classModel
-
kernelInstance
-
referencedFieldNames
-
arrayFieldAssignments
-
arrayFieldAccesses
-
objectArrayFieldsClasses
-
allFieldsClasses
-
arrayFieldArrayLengthUsed
-
calledMethods
-
methodModel
-
usesDoubles
private boolean usesDoublesTrue is an indication to use the fp64 pragma -
usesByteWrites
private boolean usesByteWritesTrue is an indication to use the byte addressable store pragma -
usesAtomic32
private boolean usesAtomic32True is an indication to use the atomics pragmas -
usesAtomic64
private boolean usesAtomic64
-
-
Constructor Details
-
Entrypoint
public Entrypoint(ClassModel _classModel, MethodModel _methodModel, Object _k) throws AparapiException - Throws:
AparapiException
-
-
Method Details
-
requiresDoublePragma
public boolean requiresDoublePragma() -
requiresByteAddressableStorePragma
public boolean requiresByteAddressableStorePragma() -
setRequiresAtomics32Pragma
public void setRequiresAtomics32Pragma(boolean newVal) -
setRequiresAtomics64Pragma
public void setRequiresAtomics64Pragma(boolean newVal) -
requiresAtomic32Pragma
public boolean requiresAtomic32Pragma() -
requiresAtomic64Pragma
public boolean requiresAtomic64Pragma() -
getKernelInstance
-
setKernelInstance
-
getObjectArrayFieldsClasses
-
getFieldFromClassHierarchy
public static Field getFieldFromClassHierarchy(Class<?> _clazz, String _name) throws AparapiException - Throws:
AparapiException
-
getOrUpdateAllClassAccesses
- Throws:
AparapiException
-
resolveAccessorCandidate
public ClassModel.ClassModelMethod resolveAccessorCandidate(InstructionSet.MethodCall _methodCall, ClassModel.ConstantPool.MethodEntry _methodEntry) throws AparapiException - Throws:
AparapiException
-
updateObjectMemberFieldAccesses
public void updateObjectMemberFieldAccesses(String className, ClassModel.ConstantPool.FieldEntry field) throws AparapiException - Throws:
AparapiException
-
resolveCalledMethod
ClassModel.ClassModelMethod resolveCalledMethod(InstructionSet.MethodCall methodCall, ClassModel classModel) throws AparapiException - Throws:
AparapiException
-
noCL
-
getSimpleGetterField
-
getReferencedClassModelFields
-
getReferencedFields
-
getCalledMethods
-
getReferencedFieldNames
-
getArrayFieldAssignments
-
getArrayFieldAccesses
-
getArrayFieldArrayLengthUsed
-
getMethodModel
-
getClassModel
-
getCallTarget
public MethodModel getCallTarget(ClassModel.ConstantPool.MethodEntry _methodEntry, boolean _isSpecial) -
cloneForKernel
- Throws:
AparapiException
-