diff options
author | Bryan Bishop <kanzure@gmail.com> | 2012-05-15 22:15:08 -0500 |
---|---|---|
committer | Bryan Bishop <kanzure@gmail.com> | 2012-05-15 22:15:08 -0500 |
commit | 9ea58a882434887ad855eaa1a0025508d767a3c7 (patch) | |
tree | b1c6d25072f6a905293610caa753c742d490ed42 | |
parent | 6b8b380535343ec72cecfb9f7f25a7425cb92261 (diff) |
only recalculate a PointerLabelParam parsed_address if necessary
original-commit-id: 7244cb256ee7a7c2fd3b56061dc4541bd5245734
-rw-r--r-- | crystal.py | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -1466,7 +1466,11 @@ class PointerLabelParam(MultiByteParam): bank = self.bank #we pass bank= for whether or not to include a bank byte when reading #.. it's not related to caddress - caddress = calculate_pointer_from_bytes_at(self.address, bank=self.bank) + caddress = None + if not (hasattr(self, "parsed_address") and self.parsed_address != None): + caddress = calculate_pointer_from_bytes_at(self.address, bank=self.bank) + else: + caddress = self.parsed_address label = get_label_for(caddress) pointer_part = label #use the label, if it is found |