Package com.aparapi.internal.model
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 ClassModel
private Object
private static Logger
private final MethodModel
private final HashMap
<String, ClassModel> private final List
<ClassModel.ClassModelField> private boolean
True is an indication to use the atomics pragmasprivate boolean
private boolean
True is an indication to use the byte addressable store pragmaprivate boolean
True is an indication to use the fp64 pragma -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) Entrypoint
cloneForKernel
(Object _k) getCallTarget
(ClassModel.ConstantPool.MethodEntry _methodEntry, boolean _isSpecial) static Field
getFieldFromClassHierarchy
(Class<?> _clazz, String _name) getOrUpdateAllClassAccesses
(String className) getSimpleGetterField
(MethodModel method) private boolean
boolean
boolean
boolean
boolean
resolveAccessorCandidate
(InstructionSet.MethodCall _methodCall, ClassModel.ConstantPool.MethodEntry _methodEntry) (package private) ClassModel.ClassModelMethod
resolveCalledMethod
(InstructionSet.MethodCall methodCall, ClassModel classModel) void
void
setRequiresAtomics32Pragma
(boolean newVal) void
setRequiresAtomics64Pragma
(boolean newVal) void
updateObjectMemberFieldAccesses
(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
-