Changes:
- $Id: resolve.h 5497 2006-09-14 18:55:03Z edwin $
+ $Id: resolve.h 5737 2006-10-11 19:40:22Z edwin $
*/
typeinfo *valuetype);
#endif
-unresolved_field *new_create_unresolved_field(classinfo *referer,
+unresolved_field *resolve_create_unresolved_field(classinfo *referer,
methodinfo *refmethod,
instruction *iptr);
-unresolved_method *new_create_unresolved_method(classinfo *referer,
- methodinfo *refmethod,
- instruction *iptr);
+unresolved_method * resolve_create_unresolved_method(classinfo *referer,
+ methodinfo *refmethod,
+ constant_FMIref *methodref,
+ bool invokestatic,
+ bool invokespecial);
void unresolved_class_free(unresolved_class *ref);
void unresolved_field_free(unresolved_field *ref);
void unresolved_method_free(unresolved_method *ref);
-resolve_result_t new_resolve_method_lazy(jitdata *jd,
- instruction *iptr,
- methodinfo *refmethod);
-
-resolve_result_t new_resolve_field_lazy(jitdata *jd,
- instruction *iptr,
- methodinfo *refmethod);
-
-#ifdef ENABLE_VERIFIER
-bool new_constrain_unresolved_field(jitdata *jd,
- unresolved_field *ref, classinfo *referer,
- methodinfo *refmethod, instruction *iptr);
+resolve_result_t resolve_method_lazy(methodinfo *refmethod,
+ constant_FMIref *methodref,
+ bool invokespecial);
+
+resolve_result_t resolve_field_lazy(methodinfo *refmethod,
+ constant_FMIref *fieldref);
+
+#if defined(ENABLE_VERIFIER)
+resolve_result_t resolve_field_verifier_checks(methodinfo *refmethod,
+ constant_FMIref *fieldref,
+ classinfo *container,
+ fieldinfo *fi,
+ typeinfo *instanceti,
+ typeinfo *valueti,
+ bool isstatic,
+ bool isput);
+
+bool resolve_constrain_unresolved_field(unresolved_field *ref,
+ classinfo *referer,
+ methodinfo *refmethod,
+ typeinfo *instanceti,
+ typeinfo *valueti);
+
+resolve_result_t resolve_method_verifier_checks(methodinfo *refmethod,
+ constant_FMIref *methodref,
+ methodinfo *mi,
+ bool invokestatic);
+
+resolve_result_t resolve_method_instance_type_checks(methodinfo *refmethod,
+ methodinfo *mi,
+ typeinfo *instanceti,
+ bool invokespecial);
+
+resolve_result_t resolve_method_param_type_checks(jitdata *jd,
+ methodinfo *refmethod,
+ instruction *iptr,
+ methodinfo *mi,
+ bool invokestatic);
+
+resolve_result_t resolve_method_param_type_checks_stackbased(
+ methodinfo *refmethod,
+ methodinfo *mi,
+ bool invokestatic,
+ typedescriptor *stack);
+
+bool resolve_method_loading_constraints(classinfo *referer,
+ methodinfo *mi);
+
+bool resolve_constrain_unresolved_method_instance(unresolved_method *ref,
+ methodinfo *refmethod,
+ typeinfo *instanceti,
+ bool invokespecial);
+
+bool resolve_constrain_unresolved_method_params(jitdata *jd,
+ unresolved_method *ref,
+ methodinfo *refmethod,
+ instruction *iptr);
-bool new_constrain_unresolved_method(jitdata *jd,
- unresolved_method *ref, classinfo *referer,
- methodinfo *refmethod, instruction *iptr);
+bool resolve_constrain_unresolved_method_params_stackbased(
+ unresolved_method *ref,
+ methodinfo *refmethod,
+ typedescriptor *stack);
-#endif
+#endif /* defined(ENABLE_VERIFIER) */
#ifndef NDEBUG
void unresolved_class_debug_dump(unresolved_class *ref,FILE *file);