mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-09-28 17:11:11 -09:00
@@ -19,7 +19,6 @@ import bisect
|
|||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
import re
|
import re
|
||||||
from typing import Callable, Dict, List, Optional, Sequence, Set, Tuple, Union
|
from typing import Callable, Dict, List, Optional, Sequence, Set, Tuple, Union
|
||||||
import platform
|
|
||||||
|
|
||||||
import gdb
|
import gdb
|
||||||
|
|
||||||
@@ -468,7 +467,7 @@ class RegisterDesc:
|
|||||||
|
|
||||||
def get_register_descs(arch: gdb.Architecture, group: str = 'all') -> List[
|
def get_register_descs(arch: gdb.Architecture, group: str = 'all') -> List[
|
||||||
Union[RegisterDesc, gdb.RegisterDescriptor]]:
|
Union[RegisterDesc, gdb.RegisterDescriptor]]:
|
||||||
if hasattr(arch, "registers") and platform.system() != "OpenBSD":
|
if hasattr(arch, "registers"):
|
||||||
try:
|
try:
|
||||||
return list(arch.registers(group))
|
return list(arch.registers(group))
|
||||||
except ValueError: # No such group, or version too old
|
except ValueError: # No such group, or version too old
|
||||||
@@ -482,7 +481,7 @@ def get_register_descs(arch: gdb.Architecture, group: str = 'all') -> List[
|
|||||||
regset = gdb.execute(
|
regset = gdb.execute(
|
||||||
f"info registers", to_string=True).strip().split('\n')
|
f"info registers", to_string=True).strip().split('\n')
|
||||||
for line in regset:
|
for line in regset:
|
||||||
if not line.startswith(" ") and "<unavailable>" not in line:
|
if not line.startswith(" "):
|
||||||
tokens = line.strip().split()
|
tokens = line.strip().split()
|
||||||
descs.append(RegisterDesc(tokens[0]))
|
descs.append(RegisterDesc(tokens[0]))
|
||||||
return descs
|
return descs
|
||||||
|
|||||||
Reference in New Issue
Block a user