webrev Sdiff src/hotspot/share/jvmci (original) (raw)
360 CSTRING_TO_JSTRING(name, c.name);
361 BOXED_LONG(value, c.value);
362 vmConstants->obj_at_put(insert++, name());
363 vmConstants->obj_at_put(insert++, value);
364 }
365 assert(insert == len * 2, "must be");
366
367 len = JVMCIVMStructs::localHotSpotVMAddresses_count();
368 objArrayHandle vmAddresses = oopFactory::new_objArray_handle(SystemDictionary::Object_klass(), len * 2, CHECK_NULL);
369 for (int i = 0; i < len ; i++) {
370 VMAddressEntry a = JVMCIVMStructs::localHotSpotVMAddresses[i];
371 CSTRING_TO_JSTRING(name, a.name);
372 BOXED_LONG(value, a.value);
373 vmAddresses->obj_at_put(i * 2, name());
374 vmAddresses->obj_at_put(i * 2 + 1, value);
375 }
376
377 #define COUNT_FLAG(ignore) +1
378 #ifdef ASSERT
379 #define CHECK_FLAG(type, name) {
380 Flag* flag = Flag::find_flag(#name, strlen(#name), /allow_locked/ true, /* return_flag */ true);
381 assert(flag != NULL, "No such flag named " #name);
382 assert(flag->is_##type(), "Flag " #name " is not of type " #type);
383 }
384 #else
385 #define CHECK_FLAG(type, name)
386 #endif
387
388 #define ADD_FLAG(type, name, convert) {
389 CHECK_FLAG(type, name)
390 instanceHandle vmFlagObj = InstanceKlass::cast(VMFlag::klass())->allocate_instance_handle(CHECK_NULL);
391 CSTRING_TO_JSTRING(fname, #name);
392 CSTRING_TO_JSTRING(ftype, #type);
393 VMFlag::set_name(vmFlagObj, fname());
394 VMFlag::set_type(vmFlagObj, ftype());
395 convert(value, name);
396 VMFlag::set_value(vmFlagObj, value);
397 vmFlags->obj_at_put(i++, vmFlagObj());
398 }
399 #define ADD_BOOL_FLAG(name) ADD_FLAG(bool, name, BOXED_BOOLEAN)
400 #define ADD_INTX_FLAG(name) ADD_FLAG(intx, name, BOXED_LONG)
401 #define ADD_UINTX_FLAG(name) ADD_FLAG(uintx, name, BOXED_LONG)
402
360 CSTRING_TO_JSTRING(name, c.name);
361 BOXED_LONG(value, c.value);
362 vmConstants->obj_at_put(insert++, name());
363 vmConstants->obj_at_put(insert++, value);
364 }
365 assert(insert == len * 2, "must be");
366
367 len = JVMCIVMStructs::localHotSpotVMAddresses_count();
368 objArrayHandle vmAddresses = oopFactory::new_objArray_handle(SystemDictionary::Object_klass(), len * 2, CHECK_NULL);
369 for (int i = 0; i < len ; i++) {
370 VMAddressEntry a = JVMCIVMStructs::localHotSpotVMAddresses[i];
371 CSTRING_TO_JSTRING(name, a.name);
372 BOXED_LONG(value, a.value);
373 vmAddresses->obj_at_put(i * 2, name());
374 vmAddresses->obj_at_put(i * 2 + 1, value);
375 }
376
377 #define COUNT_FLAG(ignore) +1
378 #ifdef ASSERT
379 #define CHECK_FLAG(type, name) {
380 JVMFlag* flag = JVMFlag::find_flag(#name, strlen(#name), /allow_locked/ true, /* return_flag */ true);
381 assert(flag != NULL, "No such flag named " #name);
382 assert(flag->is_##type(), "JVMFlag " #name " is not of type " #type);
383 }
384 #else
385 #define CHECK_FLAG(type, name)
386 #endif
387
388 #define ADD_FLAG(type, name, convert) {
389 CHECK_FLAG(type, name)
390 instanceHandle vmFlagObj = InstanceKlass::cast(VMFlag::klass())->allocate_instance_handle(CHECK_NULL);
391 CSTRING_TO_JSTRING(fname, #name);
392 CSTRING_TO_JSTRING(ftype, #type);
393 VMFlag::set_name(vmFlagObj, fname());
394 VMFlag::set_type(vmFlagObj, ftype());
395 convert(value, name);
396 VMFlag::set_value(vmFlagObj, value);
397 vmFlags->obj_at_put(i++, vmFlagObj());
398 }
399 #define ADD_BOOL_FLAG(name) ADD_FLAG(bool, name, BOXED_BOOLEAN)
400 #define ADD_INTX_FLAG(name) ADD_FLAG(intx, name, BOXED_LONG)
401 #define ADD_UINTX_FLAG(name) ADD_FLAG(uintx, name, BOXED_LONG)
402