{"action":"closed","number":43,"pull_request":{"url":"https://api.github.com/repos/reactorlabs/rir/pulls/43","id":117444274,"html_url":"https://github.com/reactorlabs/rir/pull/43","diff_url":"https://github.com/reactorlabs/rir/pull/43.diff","patch_url":"https://github.com/reactorlabs/rir/pull/43.patch","issue_url":"https://api.github.com/repos/reactorlabs/rir/issues/43","number":43,"state":"closed","locked":false,"title":"Indirect threading","user":{"login":"JanJecmen","id":13046764,"avatar_url":"https://avatars1.githubusercontent.com/u/13046764?v=3","gravatar_id":"","url":"https://api.github.com/users/JanJecmen","html_url":"https://github.com/JanJecmen","followers_url":"https://api.github.com/users/JanJecmen/followers","following_url":"https://api.github.com/users/JanJecmen/following{/other_user}","gists_url":"https://api.github.com/users/JanJecmen/gists{/gist_id}","starred_url":"https://api.github.com/users/JanJecmen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JanJecmen/subscriptions","organizations_url":"https://api.github.com/users/JanJecmen/orgs","repos_url":"https://api.github.com/users/JanJecmen/repos","events_url":"https://api.github.com/users/JanJecmen/events{/privacy}","received_events_url":"https://api.github.com/users/JanJecmen/received_events","type":"User","site_admin":false},"body":"Changed the interpreter switch loop to indirect threading: one time initialization computes the addresses of labels for each instruction into an array, and dispatching is then done in each instruction through this jump table.\r\n\r\nUses GNU computed goto's, so there is also a condition that disables this if not using gcc (the same as gnur)\r\n\r\nAlso changed the functions that access stack and constant / src pool to macros, so we do not rely on gcc inlining.","created_at":"2017-04-25T09:49:51Z","updated_at":"2017-04-25T14:58:35Z","closed_at":"2017-04-25T14:58:35Z","merged_at":"2017-04-25T14:58:35Z","merge_commit_sha":"ff73d75db424cb8725cb2fee17d3e0011cf2eb3a","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/reactorlabs/rir/pulls/43/commits","review_comments_url":"https://api.github.com/repos/reactorlabs/rir/pulls/43/comments","review_comment_url":"https://api.github.com/repos/reactorlabs/rir/pulls/comments{/number}","comments_url":"https://api.github.com/repos/reactorlabs/rir/issues/43/comments","statuses_url":"https://api.github.com/repos/reactorlabs/rir/statuses/920f296c2528a54731dcafb88089b8b910c5d0d5","head":{"label":"JanJecmen:stack-macros","ref":"stack-macros","sha":"920f296c2528a54731dcafb88089b8b910c5d0d5","user":{"login":"JanJecmen","id":13046764,"avatar_url":"https://avatars1.githubusercontent.com/u/13046764?v=3","gravatar_id":"","url":"https://api.github.com/users/JanJecmen","html_url":"https://github.com/JanJecmen","followers_url":"https://api.github.com/users/JanJecmen/followers","following_url":"https://api.github.com/users/JanJecmen/following{/other_user}","gists_url":"https://api.github.com/users/JanJecmen/gists{/gist_id}","starred_url":"https://api.github.com/users/JanJecmen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JanJecmen/subscriptions","organizations_url":"https://api.github.com/users/JanJecmen/orgs","repos_url":"https://api.github.com/users/JanJecmen/repos","events_url":"https://api.github.com/users/JanJecmen/events{/privacy}","received_events_url":"https://api.github.com/users/JanJecmen/received_events","type":"User","site_admin":false},"repo":{"id":85597918,"name":"rir","full_name":"JanJecmen/rir","owner":{"login":"JanJecmen","id":13046764,"avatar_url":"https://avatars1.githubusercontent.com/u/13046764?v=3","gravatar_id":"","url":"https://api.github.com/users/JanJecmen","html_url":"https://github.com/JanJecmen","followers_url":"https://api.github.com/users/JanJecmen/followers","following_url":"https://api.github.com/users/JanJecmen/following{/other_user}","gists_url":"https://api.github.com/users/JanJecmen/gists{/gist_id}","starred_url":"https://api.github.com/users/JanJecmen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JanJecmen/subscriptions","organizations_url":"https://api.github.com/users/JanJecmen/orgs","repos_url":"https://api.github.com/users/JanJecmen/repos","events_url":"https://api.github.com/users/JanJecmen/events{/privacy}","received_events_url":"https://api.github.com/users/JanJecmen/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/JanJecmen/rir","description":null,"fork":true,"url":"https://api.github.com/repos/JanJecmen/rir","forks_url":"https://api.github.com/repos/JanJecmen/rir/forks","keys_url":"https://api.github.com/repos/JanJecmen/rir/keys{/key_id}","collaborators_url":"https://api.github.com/repos/JanJecmen/rir/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/JanJecmen/rir/teams","hooks_url":"https://api.github.com/repos/JanJecmen/rir/hooks","issue_events_url":"https://api.github.com/repos/JanJecmen/rir/issues/events{/number}","events_url":"https://api.github.com/repos/JanJecmen/rir/events","assignees_url":"https://api.github.com/repos/JanJecmen/rir/assignees{/user}","branches_url":"https://api.github.com/repos/JanJecmen/rir/branches{/branch}","tags_url":"https://api.github.com/repos/JanJecmen/rir/tags","blobs_url":"https://api.github.com/repos/JanJecmen/rir/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/JanJecmen/rir/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/JanJecmen/rir/git/refs{/sha}","trees_url":"https://api.github.com/repos/JanJecmen/rir/git/trees{/sha}","statuses_url":"https://api.github.com/repos/JanJecmen/rir/statuses/{sha}","languages_url":"https://api.github.com/repos/JanJecmen/rir/languages","stargazers_url":"https://api.github.com/repos/JanJecmen/rir/stargazers","contributors_url":"https://api.github.com/repos/JanJecmen/rir/contributors","subscribers_url":"https://api.github.com/repos/JanJecmen/rir/subscribers","subscription_url":"https://api.github.com/repos/JanJecmen/rir/subscription","commits_url":"https://api.github.com/repos/JanJecmen/rir/commits{/sha}","git_commits_url":"https://api.github.com/repos/JanJecmen/rir/git/commits{/sha}","comments_url":"https://api.github.com/repos/JanJecmen/rir/comments{/number}","issue_comment_url":"https://api.github.com/repos/JanJecmen/rir/issues/comments{/number}","contents_url":"https://api.github.com/repos/JanJecmen/rir/contents/{+path}","compare_url":"https://api.github.com/repos/JanJecmen/rir/compare/{base}...{head}","merges_url":"https://api.github.com/repos/JanJecmen/rir/merges","archive_url":"https://api.github.com/repos/JanJecmen/rir/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/JanJecmen/rir/downloads","issues_url":"https://api.github.com/repos/JanJecmen/rir/issues{/number}","pulls_url":"https://api.github.com/repos/JanJecmen/rir/pulls{/number}","milestones_url":"https://api.github.com/repos/JanJecmen/rir/milestones{/number}","notifications_url":"https://api.github.com/repos/JanJecmen/rir/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/JanJecmen/rir/labels{/name}","releases_url":"https://api.github.com/repos/JanJecmen/rir/releases{/id}","deployments_url":"https://api.github.com/repos/JanJecmen/rir/deployments","created_at":"2017-03-20T16:06:12Z","updated_at":"2017-03-20T16:06:14Z","pushed_at":"2017-04-25T13:49:13Z","git_url":"git://github.com/JanJecmen/rir.git","ssh_url":"git@github.com:JanJecmen/rir.git","clone_url":"https://github.com/JanJecmen/rir.git","svn_url":"https://github.com/JanJecmen/rir","homepage":null,"size":3922,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"reactorlabs:master","ref":"master","sha":"80a393664a86c85b0230d38a9e0eb153590697d4","user":{"login":"reactorlabs","id":16352773,"avatar_url":"https://avatars0.githubusercontent.com/u/16352773?v=3","gravatar_id":"","url":"https://api.github.com/users/reactorlabs","html_url":"https://github.com/reactorlabs","followers_url":"https://api.github.com/users/reactorlabs/followers","following_url":"https://api.github.com/users/reactorlabs/following{/other_user}","gists_url":"https://api.github.com/users/reactorlabs/gists{/gist_id}","starred_url":"https://api.github.com/users/reactorlabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactorlabs/subscriptions","organizations_url":"https://api.github.com/users/reactorlabs/orgs","repos_url":"https://api.github.com/users/reactorlabs/repos","events_url":"https://api.github.com/users/reactorlabs/events{/privacy}","received_events_url":"https://api.github.com/users/reactorlabs/received_events","type":"Organization","site_admin":false},"repo":{"id":63323368,"name":"rir","full_name":"reactorlabs/rir","owner":{"login":"reactorlabs","id":16352773,"avatar_url":"https://avatars0.githubusercontent.com/u/16352773?v=3","gravatar_id":"","url":"https://api.github.com/users/reactorlabs","html_url":"https://github.com/reactorlabs","followers_url":"https://api.github.com/users/reactorlabs/followers","following_url":"https://api.github.com/users/reactorlabs/following{/other_user}","gists_url":"https://api.github.com/users/reactorlabs/gists{/gist_id}","starred_url":"https://api.github.com/users/reactorlabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactorlabs/subscriptions","organizations_url":"https://api.github.com/users/reactorlabs/orgs","repos_url":"https://api.github.com/users/reactorlabs/repos","events_url":"https://api.github.com/users/reactorlabs/events{/privacy}","received_events_url":"https://api.github.com/users/reactorlabs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/reactorlabs/rir","description":null,"fork":false,"url":"https://api.github.com/repos/reactorlabs/rir","forks_url":"https://api.github.com/repos/reactorlabs/rir/forks","keys_url":"https://api.github.com/repos/reactorlabs/rir/keys{/key_id}","collaborators_url":"https://api.github.com/repos/reactorlabs/rir/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/reactorlabs/rir/teams","hooks_url":"https://api.github.com/repos/reactorlabs/rir/hooks","issue_events_url":"https://api.github.com/repos/reactorlabs/rir/issues/events{/number}","events_url":"https://api.github.com/repos/reactorlabs/rir/events","assignees_url":"https://api.github.com/repos/reactorlabs/rir/assignees{/user}","branches_url":"https://api.github.com/repos/reactorlabs/rir/branches{/branch}","tags_url":"https://api.github.com/repos/reactorlabs/rir/tags","blobs_url":"https://api.github.com/repos/reactorlabs/rir/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/reactorlabs/rir/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/reactorlabs/rir/git/refs{/sha}","trees_url":"https://api.github.com/repos/reactorlabs/rir/git/trees{/sha}","statuses_url":"https://api.github.com/repos/reactorlabs/rir/statuses/{sha}","languages_url":"https://api.github.com/repos/reactorlabs/rir/languages","stargazers_url":"https://api.github.com/repos/reactorlabs/rir/stargazers","contributors_url":"https://api.github.com/repos/reactorlabs/rir/contributors","subscribers_url":"https://api.github.com/repos/reactorlabs/rir/subscribers","subscription_url":"https://api.github.com/repos/reactorlabs/rir/subscription","commits_url":"https://api.github.com/repos/reactorlabs/rir/commits{/sha}","git_commits_url":"https://api.github.com/repos/reactorlabs/rir/git/commits{/sha}","comments_url":"https://api.github.com/repos/reactorlabs/rir/comments{/number}","issue_comment_url":"https://api.github.com/repos/reactorlabs/rir/issues/comments{/number}","contents_url":"https://api.github.com/repos/reactorlabs/rir/contents/{+path}","compare_url":"https://api.github.com/repos/reactorlabs/rir/compare/{base}...{head}","merges_url":"https://api.github.com/repos/reactorlabs/rir/merges","archive_url":"https://api.github.com/repos/reactorlabs/rir/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/reactorlabs/rir/downloads","issues_url":"https://api.github.com/repos/reactorlabs/rir/issues{/number}","pulls_url":"https://api.github.com/repos/reactorlabs/rir/pulls{/number}","milestones_url":"https://api.github.com/repos/reactorlabs/rir/milestones{/number}","notifications_url":"https://api.github.com/repos/reactorlabs/rir/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/reactorlabs/rir/labels{/name}","releases_url":"https://api.github.com/repos/reactorlabs/rir/releases{/id}","deployments_url":"https://api.github.com/repos/reactorlabs/rir/deployments","created_at":"2016-07-14T09:40:07Z","updated_at":"2017-03-23T20:21:03Z","pushed_at":"2017-04-25T14:58:35Z","git_url":"git://github.com/reactorlabs/rir.git","ssh_url":"git@github.com:reactorlabs/rir.git","clone_url":"https://github.com/reactorlabs/rir.git","svn_url":"https://github.com/reactorlabs/rir","homepage":null,"size":3894,"stargazers_count":4,"watchers_count":4,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":19,"forks":3,"open_issues":19,"watchers":4,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/reactorlabs/rir/pulls/43"},"html":{"href":"https://github.com/reactorlabs/rir/pull/43"},"issue":{"href":"https://api.github.com/repos/reactorlabs/rir/issues/43"},"comments":{"href":"https://api.github.com/repos/reactorlabs/rir/issues/43/comments"},"review_comments":{"href":"https://api.github.com/repos/reactorlabs/rir/pulls/43/comments"},"review_comment":{"href":"https://api.github.com/repos/reactorlabs/rir/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/reactorlabs/rir/pulls/43/commits"},"statuses":{"href":"https://api.github.com/repos/reactorlabs/rir/statuses/920f296c2528a54731dcafb88089b8b910c5d0d5"}},"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"o-","id":710933,"avatar_url":"https://avatars3.githubusercontent.com/u/710933?v=3","gravatar_id":"","url":"https://api.github.com/users/o-","html_url":"https://github.com/o-","followers_url":"https://api.github.com/users/o-/followers","following_url":"https://api.github.com/users/o-/following{/other_user}","gists_url":"https://api.github.com/users/o-/gists{/gist_id}","starred_url":"https://api.github.com/users/o-/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/o-/subscriptions","organizations_url":"https://api.github.com/users/o-/orgs","repos_url":"https://api.github.com/users/o-/repos","events_url":"https://api.github.com/users/o-/events{/privacy}","received_events_url":"https://api.github.com/users/o-/received_events","type":"User","site_admin":false},"comments":2,"review_comments":0,"maintainer_can_modify":false,"commits":4,"additions":1179,"deletions":1172,"changed_files":3}}
{"actor":{"display_login":"o-"}}