{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/36993","repository_url":"https://api.github.com/repos/rust-lang/rust","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/36993/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/36993/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/36993/events","html_url":"https://github.com/rust-lang/rust/pull/36993","id":181319541,"number":36993,"title":"Optimize ObligationForest's NodeState handling.","user":{"login":"nnethercote","id":1940286,"avatar_url":"https://avatars.githubusercontent.com/u/1940286?v=3","gravatar_id":"","url":"https://api.github.com/users/nnethercote","html_url":"https://github.com/nnethercote","followers_url":"https://api.github.com/users/nnethercote/followers","following_url":"https://api.github.com/users/nnethercote/following{/other_user}","gists_url":"https://api.github.com/users/nnethercote/gists{/gist_id}","starred_url":"https://api.github.com/users/nnethercote/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nnethercote/subscriptions","organizations_url":"https://api.github.com/users/nnethercote/orgs","repos_url":"https://api.github.com/users/nnethercote/repos","events_url":"https://api.github.com/users/nnethercote/events{/privacy}","received_events_url":"https://api.github.com/users/nnethercote/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false},"assignees":[{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false}],"milestone":null,"comments":19,"created_at":"2016-10-06T03:59:27Z","updated_at":"2016-11-02T21:02:20Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang/rust/pulls/36993","html_url":"https://github.com/rust-lang/rust/pull/36993","diff_url":"https://github.com/rust-lang/rust/pull/36993.diff","patch_url":"https://github.com/rust-lang/rust/pull/36993.patch"},"body":"This commit does the following.\n- Changes `NodeState` from an enum to a `bitflags`. This makes it\n  possible to check against multiple possible values in a single bitwise\n  operation.\n- Replaces all the hot `match`es involving `NodeState` with `if`/`else`\n  chains that ensure that cases are handled in the order of frequency.\n- Partially inlines two functions, `find_cycles_from_node` and\n  `mark_as_waiting_from`, at two call sites in order to avoid function\n  unnecessary function calls on hot paths.\n- Fully inlines and removes `is_popped`.\n\nThese changes speeds up rustc-benchmarks/inflate-0.1.0 by about 7% when\ndoing debug builds with a stage1 compiler.\n\nr? @arielb1 \n"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/257998017","html_url":"https://github.com/rust-lang/rust/pull/36993#issuecomment-257998017","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/36993","id":257998017,"user":{"login":"bors","id":3372342,"avatar_url":"https://avatars.githubusercontent.com/u/3372342?v=3","gravatar_id":"","url":"https://api.github.com/users/bors","html_url":"https://github.com/bors","followers_url":"https://api.github.com/users/bors/followers","following_url":"https://api.github.com/users/bors/following{/other_user}","gists_url":"https://api.github.com/users/bors/gists{/gist_id}","starred_url":"https://api.github.com/users/bors/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bors/subscriptions","organizations_url":"https://api.github.com/users/bors/orgs","repos_url":"https://api.github.com/users/bors/repos","events_url":"https://api.github.com/users/bors/events{/privacy}","received_events_url":"https://api.github.com/users/bors/received_events","type":"User","site_admin":false},"created_at":"2016-11-02T21:02:20Z","updated_at":"2016-11-02T21:02:20Z","body":":pushpin: Commit 7b33f7e has been approved by `nikomatsakis`\n\n<!-- @bors r=nikomatsakis 7b33f7e3e77794e8a44d07d97bc7b62ab9f79981 -->"}}
{"actor":{"display_login":"bors"}}