Jump to content

controlling test message severity from command line

Recommended Posts



i thought this would remove all info messages






btw  +uvm_set_severity would change INFO to WARNING/ERROR/FATAL and therefore still emit it - just with a different severity



Link to comment
Share on other sites

it's not working for me :

What is _ALL_ ? the second argument is the message id, I tried other ID's and RNTST but it's also not working.

I'm using vcs :

vcs -sverilog -debug_all -f ../hammer_env.fl -ntb_opts uvm ../tests/hammer_base_test.sv \
-l hammer_base_test_build.log +uvm_set_action=uvm_test_top,RNTST,UVM_INFO,UVM_NO_ACTION \
+UVM_TESTNAME=hammer_base_test -R

VCD+ Writer G-2012.09-SP1-1 Copyright (c) 1991-2012 by Synopsys Inc.
UVM_INFO @ 0: reporter [RNTST] Running test hammer_base_test...

although when I used


set_report_severity_action_hier(UVM_INFO, UVM_NO_ACTION);

it did work

Link to comment
Share on other sites


is a "magic" name that can match either all severities or all IDs.


I think you'd need


That should match any component with a full hierarchical name that starts with your top level component name. I guess maybe


should also work as that should match any component - but I haven't tried it.




Link to comment
Share on other sites



as far as i remember there is an issue with messages from uvm_root and reporting adjustments via the cmdline. that might affect the RNTST message. 



btw: the first arg is "uvm_test_top" when the test is created via the factory. its the logical name of the top test (which is of type hammer_base_test).



Link to comment
Share on other sites

Thanks for reminding about uvm_test_top Uwe.


Regarding RNTST, what seems to happen is that the command line arguments for suppressing messages are processed in the function


at the end of the constructor of the uvm_component base class - however for uvm_root, that function is never called because there is special code that returns from the constructor early if it is constructing uvm_root. Like this:


function uvm_component::new (string name, uvm_component parent);  string error_str;  uvm_root top;  super.new(name);  // If uvm_top, reset name to "" so it doesn't show in full paths then return  if (parent==null && name == "__top__") begin    set_name(""); // *** VIRTUAL    return;  end  //... LOTS OF OTHER STUFF OMITTED  m_set_cl_msg_args();  // this line processes the command line msg argumentsendfunction
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...