26 #ifndef DESCRIPTOR_HPP_
27 #define DESCRIPTOR_HPP_ 1
34 #include <sys/types.h>
78 struct descriptor_pool;
100 void get_sizes(
size_t *classrefsize,
size_t *descsize);
148 #if defined(__MIPS__)
184 #define METHODDESC_NOPARAMS ((paramdesc*)1)
206 return SIZEOF_VOID_P;
209 assert(
false &&
"Illegal Type");
215 #endif // DESCRIPTOR_HPP_
void get_sizes(size_t *classrefsize, size_t *descsize)
classinfo * get_referer()
DescriptorPool(classinfo *referer)
Dummy implementation of a mutex.
T * allocate(size_t size=sizeof(T))
JNIEnv jclass jobject const char * name
JNIEnv jthread jobject jclass jlong size
constant_classref * lookup_classref(Utf8String classname)
bool add_field(Utf8String desc)
Type
Types used internally by JITTED code.
FieldrefHash fieldrefhash
Type descriptor_to_basic_type(Utf8String descriptor)
void params_from_paramtypes(s4 mflags)
typedesc * parse_field_descriptor(Utf8String desc)
ssize_t add_method(Utf8String desc)
HashTable< InsertOnlyNameValuePair< u2 > > ClassrefHash
uint8_t * descriptors_next
HashTable< InsertOnlyNameValuePair< typedesc * > > FieldrefHash
constant_classref * classrefs
methoddesc * parse_method_descriptor(Utf8String desc, s4 mflags, constant_classref *thisclass)
ClassrefHash classrefhash
bool add_class(Utf8String name)
void descriptor_debug_print_typedesc(FILE *file, typedesc *d)
void descriptor_debug_print_methoddesc(FILE *file, methoddesc *d)
PrimitiveType primitivetype
constant_classref * create_classrefs(s4 *count)
constant_classref * classref
void alloc_parsed_descriptors()