{"action":"created","issue":{"url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/64","labels_url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/64/labels{/name}","comments_url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/64/comments","events_url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/64/events","html_url":"https://github.com/kripken/emscripten-fastcomp/pull/64","id":60210122,"number":64,"title":"Optimize stack restoration.","user":{"login":"waywardmonkeys","id":178582,"avatar_url":"https://avatars.githubusercontent.com/u/178582?v=3","gravatar_id":"","url":"https://api.github.com/users/waywardmonkeys","html_url":"https://github.com/waywardmonkeys","followers_url":"https://api.github.com/users/waywardmonkeys/followers","following_url":"https://api.github.com/users/waywardmonkeys/following{/other_user}","gists_url":"https://api.github.com/users/waywardmonkeys/gists{/gist_id}","starred_url":"https://api.github.com/users/waywardmonkeys/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/waywardmonkeys/subscriptions","organizations_url":"https://api.github.com/users/waywardmonkeys/orgs","repos_url":"https://api.github.com/users/waywardmonkeys/repos","events_url":"https://api.github.com/users/waywardmonkeys/events{/privacy}","received_events_url":"https://api.github.com/users/waywardmonkeys/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-03-07T15:15:14Z","updated_at":"2015-03-10T22:50:56Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/kripken/emscripten-fastcomp/pulls/64","html_url":"https://github.com/kripken/emscripten-fastcomp/pull/64","diff_url":"https://github.com/kripken/emscripten-fastcomp/pull/64.diff","patch_url":"https://github.com/kripken/emscripten-fastcomp/pull/64.patch"},"body":"Only emit stack restoration when the stack has been bumped by the\r\ncurrent function. This means that all functions must exercise\r\nproper stack discipline.\r\n\r\nThis is done by looking for any static allocas during the computation\r\nof the frame offset as well as any dynamic allocas when emitting the\r\ncode for the function.\r\n\r\nThis addresses https://github.com/kripken/emscripten/issues/3071.\r\n\r\ncc: @chadaustin"},"comment":{"url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/comments/78165778","html_url":"https://github.com/kripken/emscripten-fastcomp/pull/64#issuecomment-78165778","issue_url":"https://api.github.com/repos/kripken/emscripten-fastcomp/issues/64","id":78165778,"user":{"login":"kripken","id":173661,"avatar_url":"https://avatars.githubusercontent.com/u/173661?v=3","gravatar_id":"","url":"https://api.github.com/users/kripken","html_url":"https://github.com/kripken","followers_url":"https://api.github.com/users/kripken/followers","following_url":"https://api.github.com/users/kripken/following{/other_user}","gists_url":"https://api.github.com/users/kripken/gists{/gist_id}","starred_url":"https://api.github.com/users/kripken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kripken/subscriptions","organizations_url":"https://api.github.com/users/kripken/orgs","repos_url":"https://api.github.com/users/kripken/repos","events_url":"https://api.github.com/users/kripken/events{/privacy}","received_events_url":"https://api.github.com/users/kripken/received_events","type":"User","site_admin":false},"created_at":"2015-03-10T22:50:56Z","updated_at":"2015-03-10T22:50:56Z","body":"Surely you also want to not emit the `sp = STACKTOP; STACKTOP += N` code as well? I don't see that here.,"}}