report源码分析——宏的执行

uvm_info,uvm_error其实是对uvm_report_info,uvm_report_error的封装。

其中warning,error,fatal,macros默认都是定义为UVM_NONE的verbosity,所以必然会执行。

对于report_object中的调用,先用report_enable进行判断,然后调用report_info等function,最后的1表示已经经过检查

      

      

uvm_info_context,uvm_error_context宏的调用,需要显示的指明一个uvm_report_object

      

uvm_message之类的宏的调用,直接调用report_object中的,uvm_process_report_message,

      

uvm_message_context之类的宏的调用:

      

uvm_message之类的宏只要用在自己需要加入一些int,string,object的场景:

      

原文地址:https://www.cnblogs.com/-9-8/p/7507008.html