code: @Override
      public void visitCode(Code obj) {
          try {
  
              ignoreRegs.clear();
              Method method = getMethod();
              if (!method.isStatic()) {
                  ignoreRegs.set(0);
              }
  
              int[] parmRegs = RegisterUtils.getParameterRegisters(method);
              for (int parm : parmRegs) {
                  ignoreRegs.set(parm);
              }
  
              rootScopeBlock = new ScopeBlock(0, obj.getLength());
              tryBlocks.clear();
              catchHandlers.clear();
              CodeException[] exceptions = obj.getExceptionTable();
              if (exceptions != null) {
                  for (CodeException ex : exceptions) {
                      tryBlocks.set(ex.getStartPC());
                      catchHandlers.set(ex.getHandlerPC());
                  }
              }
  
              switchTargets.clear();
              stack.resetForMethodEntry(this);
              dontReport = false;
              sawDup = false;
              sawNull = false;
              super.visitCode(obj);
  
              if (!dontReport) {
                  rootScopeBlock.findBugs(new HashSet<Integer>());
              }
  
          } finally {
              rootScopeBlock = null;
          }
      }
docs: implements the visitor to reset the register to location map
  
  @param obj
  the context object of the currently parsed code block