Home > Community > Forums > Functional Verification > problem with e linting with hal

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 problem with e linting with hal  

Last post Mon, Apr 15 2013 3:16 AM by hannes. 3 replies.
Started by myonlyscreen 11 Apr 2013 12:09 PM. Topic has 3 replies and 1095 views
Page 1 of 1 (4 items)
Sort Posts:
  • Thu, Apr 11 2013 12:09 PM

    problem with e linting with hal Reply

     Hi all

    I am using HAL for e linting and facing a problem with filtering source file for linting.

    I am using the a design_info.txt file method to filter files that i don't want to lint.

    however, this method works only for the built-in rules and doesn't affect the user defined rules (rules created by me).

    Is there a way to fix this behavior of the HAL linter ?   i saw that there is a way to use a callback method for HAL messages, is this the only way to deal with this problem ?

    Thanks in advance.

    E.M. 

    • Post Points: 20
  • Fri, Apr 12 2013 4:22 AM

    • hannes
    • Top 150 Contributor
    • Joined on Fri, Nov 14 2008
    • Bracknell, Berkshire
    • Posts 48
    • Points 855
    Re: problem with e linting with hal Reply

    Hello E.M.,

    I've just tried to run with a user defined rule and with source filtering. This seems to work ok for me.
    Maybe there is some detail you are missing. I've added my user defined rule to the hal.def file and
    pass in the source filter via the design_info file. So my command line looks something like this:

    irun -hal ./exmple.e my_rule.e -nosncomp -halargs "-rulefile ./hal.def -design_info ./design_info.txt"

     

    -hannes 

    Filed under:
    • Post Points: 20
  • Sun, Apr 14 2013 12:32 AM

    Re: problem with e linting with hal Reply

     Hi Hannes

    my irun command is very similar to yours, but i used yours to check if it will works and it doesn't.

    It still doesn't recognize the rule i want to filter.

    I am using a local def file that includes the hal.def file with include default line.

    I tried to filter the rule with the next code in the design_info file:

    lint_checking file = /some_path/e/*/e/*.e {
       EAEVWS     off;
       ETCMWS     off;
    }

    the first rule is  a built in rule thus being filtered the second one gives the following warning:

    hal: *W,NORUCY (/some_path/design_info_e_lint.txt,8|0): The argument 'ETCMWS' in lint pragma does not map to any rule or category.

    however in the Analysis summary it appears with no problems(underlined):

     Errors   : (273)
      EAEVNU (3)      EAEVWS (16)     EAGLOV (7)      EALDIB (3)
      EALIAF (5)      EALPIB (2)      EANEDR (3)      EAOUTP (49)
      EAVDUN (1)      ERARSG (17)     ERCHEX (5)      ERPKIM (1)
      ETCMWS (154)    UVBTNU (1)      UVTFRN (6)

    what do you think is the cause for difference between us ? can it be the fact that i am using a local def file ?

    it seems like the loacl def file is being loaded after the design info file.

    thanks a lot for help so far.

    E.M. 

    • Post Points: 20
  • Mon, Apr 15 2013 3:16 AM

    • hannes
    • Top 150 Contributor
    • Joined on Fri, Nov 14 2008
    • Bracknell, Berkshire
    • Posts 48
    • Points 855
    Re: problem with e linting with hal Reply

    Hello E.M.

    This indeed looks like a bug (ion only had a black box line in my design_info for the file which triggered the user-defined check).
    Please can you open a change request via support.cadence.com to track R&D fixing this issue.

    As a workaround, you can use the -nocheck HAL parameter (although this is awkward for more than a handful of rules):
    irun -hal ./example.e my_rule.e -halargs "rulesfile ./hal.def -nocheck MY_RULE"

    Best regards,

    -hannes 

     

    Filed under:
    • Post Points: 5
Page 1 of 1 (4 items)
Sort Posts:
Started by myonlyscreen at 11 Apr 2013 12:09 PM. Topic has 3 replies.