From: Brian Gesiak Date: Mon, 14 Aug 2017 04:16:43 +0000 (+0000) Subject: [opt-viewer] Listify `dict_items` for Py3 indexing X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=42aa2a09c6f7ea31c023386a716fc090f391ea2b;p=llvm [opt-viewer] Listify `dict_items` for Py3 indexing Summary: In Python 2, calling `dict.items()` returns an indexable `list`, whereas on Python 3 it returns a set-like `dict_items` object, which cannot be indexed. Explicitly onvert the `dict_items` object so that it can be indexed when using Python 3. In combination with D36622, D36623, and D36624, this change allows `opt-viewer.py` to exit successfully when run with Python 3.4. Test Plan: Run `opt-viewer.py` using Python 3.4 and confirm it does not encounter a runtime error when when indexing into `dict.items()`. Reviewers: anemet Reviewed By: anemet Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D36630 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310810 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/opt-viewer/optrecord.py b/tools/opt-viewer/optrecord.py index e84c83e2ce9..a16763821ed 100644 --- a/tools/opt-viewer/optrecord.py +++ b/tools/opt-viewer/optrecord.py @@ -146,7 +146,7 @@ class Remark(yaml.YAMLObject): del mapping['DebugLoc'] assert(len(mapping) == 1) - (key, value) = mapping.items()[0] + (key, value) = list(mapping.items())[0] if key == 'Caller' or key == 'Callee': value = cgi.escape(demangle(value))