[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH v5 22/33] Hexagon (target/hexagon) generater phase 4 - de
From: |
Alessandro Di Federico |
Subject: |
Re: [RFC PATCH v5 22/33] Hexagon (target/hexagon) generater phase 4 - decode tree |
Date: |
Thu, 19 Nov 2020 23:53:39 +0100 |
On Thu, 29 Oct 2020 19:08:28 -0500
Taylor Simpson <tsimpson@quicinc.com> wrote:
> +if __name__ == '__main__':
> + f = io.StringIO()
> + print_tree(f, dectree_normal)
> + print_tree(f, dectree_16bit)
> + if subinsn_groupings:
> + print_tree(f, dectree_subinsn_groupings)
> + for (name, dectree_subinsn) in sorted(dectree_subinsns.items()):
> + print_tree(f, dectree_subinsn)
> + for (name, dectree_ext) in sorted(dectree_extensions.items()):
> + print_tree(f, dectree_ext)
> + print_match_info(f)
> + print_op_info(f)
> + open(sys.argv[1], 'w').write(f.getvalue())
Is there any specific reason why (here and elsewhere) you use
`StringIO` instead of writing to the file directly?
I'd expect something like:
```
if __name__ == '__main__':
with open(sys.argv[1], 'w') as f:
print_tree(f, dectree_normal)
print_tree(f, dectree_16bit)
if subinsn_groupings:
print_tree(f, dectree_subinsn_groupings)
for (name, dectree_subinsn) in sorted(dectree_subinsns.items()):
print_tree(f, dectree_subinsn)
for (name, dectree_ext) in sorted(dectree_extensions.items()):
print_tree(f, dectree_ext)
print_match_info(f)
print_op_info(f)
```
Maybe you're trying to avoid leaving a corrupted file in case of error,
but I guess that's more of a concern for the build system.
Elsewhere, you invoke `.close()`. I'd suggest to use a `with`-statement
there too.
--
Alessandro Di Federico
rev.ng
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [RFC PATCH v5 22/33] Hexagon (target/hexagon) generater phase 4 - decode tree,
Alessandro Di Federico <=