if (VM.VerifyAssertions) VM.assert(isLoaded());
if (VM.VerifyAssertions) VM._assert(isLoaded());
  final int findLineNumberForBytecode(int pc) {    if (VM.VerifyAssertions) VM.assert(isLoaded());    if (lineNumberMap == null)      return 0; // javac didn't provide any info    // since "pc" points just beyond the desired instruction,    // we scan for the line whose "pc" most-closely-preceeds    // the desired instruction    //    int[] startPCs       = lineNumberMap.startPCs;    int[] lineNumbers    = lineNumberMap.lineNumbers;    int   candidateIndex = -1;    for (int i = 0, n = startPCs.length; i < n; ++i) {      if (startPCs[i] >= pc)        break;      candidateIndex = i;    }    if (candidateIndex == -1)      return 0; // not found    return lineNumbers[candidateIndex];  }