|
|
|
@ -147,9 +147,11 @@ def get_vlen(ext_dict): |
|
|
|
vlen = max(vlen, zvelen) |
|
|
|
return vlen |
|
|
|
|
|
|
|
def get_elen(ext_dict): |
|
|
|
elen = 32 |
|
|
|
def get_elen(ext_dict, xlen): |
|
|
|
elen = xlen |
|
|
|
|
|
|
|
if "zve32x" in ext_dict or "zve32f" in ext_dict: |
|
|
|
elen = 32 |
|
|
|
if "zve64x" in ext_dict or "zve64f" in ext_dict or "zve64d" in ext_dict: |
|
|
|
elen = 64 |
|
|
|
|
|
|
|
@ -263,10 +265,12 @@ def parse_elf_file(elf_file_path): |
|
|
|
for extension in extension_dict.keys(): |
|
|
|
extensions.append(extension) |
|
|
|
|
|
|
|
xlen = get_xlen(elf_file_path) |
|
|
|
|
|
|
|
CPU_OPTIONS["extensions"] = extensions |
|
|
|
CPU_OPTIONS["vlen"] = get_vlen(extension_dict) |
|
|
|
CPU_OPTIONS["elen"] = get_elen(extension_dict) |
|
|
|
CPU_OPTIONS["xlen"] = get_xlen(elf_file_path) |
|
|
|
CPU_OPTIONS["elen"] = get_elen(extension_dict, xlen) |
|
|
|
CPU_OPTIONS["xlen"] = xlen |
|
|
|
|
|
|
|
def main(argv): |
|
|
|
opt = parse_opt(argv) |
|
|
|
|