comparison src/share/vm/prims/jvmtiImpl.hpp @ 6854:fb19af007ffc

7189254: Change makefiles for more flexibility to override defaults Summary: Change makefiles so that targets and parameters can be overridden by alternate makefiles. Reviewed-by: dholmes, coleenp
author jprovino
date Wed, 10 Oct 2012 14:35:58 -0400
parents da91efe96a93
children 8b46b0196eb0
comparison
equal deleted inserted replaced
6830:81e878c53615 6854:fb19af007ffc
479 479
480 JvmtiDeferredEvent() : _type(TYPE_NONE) {} 480 JvmtiDeferredEvent() : _type(TYPE_NONE) {}
481 481
482 // Factory methods 482 // Factory methods
483 static JvmtiDeferredEvent compiled_method_load_event(nmethod* nm) 483 static JvmtiDeferredEvent compiled_method_load_event(nmethod* nm)
484 KERNEL_RETURN_(JvmtiDeferredEvent()); 484 NOT_JVMTI_RETURN_(JvmtiDeferredEvent());
485 static JvmtiDeferredEvent compiled_method_unload_event(nmethod* nm, 485 static JvmtiDeferredEvent compiled_method_unload_event(nmethod* nm,
486 jmethodID id, const void* code) KERNEL_RETURN_(JvmtiDeferredEvent()); 486 jmethodID id, const void* code) NOT_JVMTI_RETURN_(JvmtiDeferredEvent());
487 static JvmtiDeferredEvent dynamic_code_generated_event( 487 static JvmtiDeferredEvent dynamic_code_generated_event(
488 const char* name, const void* begin, const void* end) 488 const char* name, const void* begin, const void* end)
489 KERNEL_RETURN_(JvmtiDeferredEvent()); 489 NOT_JVMTI_RETURN_(JvmtiDeferredEvent());
490 490
491 // Actually posts the event. 491 // Actually posts the event.
492 void post() KERNEL_RETURN; 492 void post() NOT_JVMTI_RETURN;
493 }; 493 };
494 494
495 /** 495 /**
496 * Events enqueued on this queue wake up the Service thread which dequeues 496 * Events enqueued on this queue wake up the Service thread which dequeues
497 * and posts the events. The Service_lock is required to be held 497 * and posts the events. The Service_lock is required to be held
518 static QueueNode* _queue_head; // Hold Service_lock to access 518 static QueueNode* _queue_head; // Hold Service_lock to access
519 static QueueNode* _queue_tail; // Hold Service_lock to access 519 static QueueNode* _queue_tail; // Hold Service_lock to access
520 static volatile QueueNode* _pending_list; // Uses CAS for read/update 520 static volatile QueueNode* _pending_list; // Uses CAS for read/update
521 521
522 // Transfers events from the _pending_list to the _queue. 522 // Transfers events from the _pending_list to the _queue.
523 static void process_pending_events() KERNEL_RETURN; 523 static void process_pending_events() NOT_JVMTI_RETURN;
524 524
525 public: 525 public:
526 // Must be holding Service_lock when calling these 526 // Must be holding Service_lock when calling these
527 static bool has_events() KERNEL_RETURN_(false); 527 static bool has_events() NOT_JVMTI_RETURN_(false);
528 static void enqueue(const JvmtiDeferredEvent& event) KERNEL_RETURN; 528 static void enqueue(const JvmtiDeferredEvent& event) NOT_JVMTI_RETURN;
529 static JvmtiDeferredEvent dequeue() KERNEL_RETURN_(JvmtiDeferredEvent()); 529 static JvmtiDeferredEvent dequeue() NOT_JVMTI_RETURN_(JvmtiDeferredEvent());
530 530
531 // Used to enqueue events without using a lock, for times (such as during 531 // Used to enqueue events without using a lock, for times (such as during
532 // safepoint) when we can't or don't want to lock the Service_lock. 532 // safepoint) when we can't or don't want to lock the Service_lock.
533 // 533 //
534 // Events will be held off to the side until there's a call to 534 // Events will be held off to the side until there's a call to
535 // dequeue(), enqueue(), or process_pending_events() (all of which require 535 // dequeue(), enqueue(), or process_pending_events() (all of which require
536 // the holding of the Service_lock), and will be enqueued at that time. 536 // the holding of the Service_lock), and will be enqueued at that time.
537 static void add_pending_event(const JvmtiDeferredEvent&) KERNEL_RETURN; 537 static void add_pending_event(const JvmtiDeferredEvent&) NOT_JVMTI_RETURN;
538 }; 538 };
539 539
540 // Utility macro that checks for NULL pointers: 540 // Utility macro that checks for NULL pointers:
541 #define NULL_CHECK(X, Y) if ((X) == NULL) { return (Y); } 541 #define NULL_CHECK(X, Y) if ((X) == NULL) { return (Y); }
542 542