@@ -583,22 +583,30 @@ class MacroAssembler: public Assembler {
583
583
// method handles (JSR 292)
584
584
Address argument_address (RegisterOrConstant arg_slot, int extra_slot_offset = 0 );
585
585
586
- // ----
587
- void set_word_if_not_zero (Register reg); // sets reg to 1 if not zero, otherwise 0
588
-
589
586
// Debugging
590
587
591
588
// only if +VerifyOops
592
589
void _verify_oop (Register reg, const char * s, const char * file, int line);
593
590
void _verify_oop_addr (Address addr, const char * s, const char * file, int line);
594
591
592
+ void _verify_oop_checked (Register reg, const char * s, const char * file, int line) {
593
+ if (VerifyOops) {
594
+ _verify_oop (reg, s, file, line);
595
+ }
596
+ }
597
+ void _verify_oop_addr_checked (Address reg, const char * s, const char * file, int line) {
598
+ if (VerifyOops) {
599
+ _verify_oop_addr (reg, s, file, line);
600
+ }
601
+ }
602
+
595
603
// TODO: verify method and klass metadata (compare against vptr?)
596
604
void _verify_method_ptr (Register reg, const char * msg, const char * file, int line) {}
597
605
void _verify_klass_ptr (Register reg, const char * msg, const char * file, int line){}
598
606
599
- #define verify_oop (reg ) _verify_oop (reg, " broken oop " #reg, __FILE__, __LINE__)
600
- #define verify_oop_msg (reg, msg ) _verify_oop (reg, " broken oop " #reg " , " #msg, __FILE__, __LINE__)
601
- #define verify_oop_addr (addr ) _verify_oop_addr (addr, " broken oop addr " #addr, __FILE__, __LINE__)
607
+ #define verify_oop (reg ) _verify_oop_checked (reg, " broken oop " #reg, __FILE__, __LINE__)
608
+ #define verify_oop_msg (reg, msg ) _verify_oop_checked (reg, " broken oop " #reg " , " #msg, __FILE__, __LINE__)
609
+ #define verify_oop_addr (addr ) _verify_oop_addr_checked (addr, " broken oop addr " #addr, __FILE__, __LINE__)
602
610
#define verify_method_ptr (reg ) _verify_method_ptr(reg, " broken method " #reg, __FILE__, __LINE__)
603
611
#define verify_klass_ptr (reg ) _verify_klass_ptr(reg, " broken klass " #reg, __FILE__, __LINE__)
604
612
0 commit comments