{"action":"created","issue":{"url":"https://api.github.com/repos/paul99/v8m-rb/issues/200","labels_url":"https://api.github.com/repos/paul99/v8m-rb/issues/200/labels{/name}","comments_url":"https://api.github.com/repos/paul99/v8m-rb/issues/200/comments","events_url":"https://api.github.com/repos/paul99/v8m-rb/issues/200/events","html_url":"https://github.com/paul99/v8m-rb/issues/200","id":114206702,"number":200,"title":"Replace jalr/jr with jialc/jic for r6","user":{"login":"paul99","id":131475,"avatar_url":"https://avatars.githubusercontent.com/u/131475?v=3","gravatar_id":"","url":"https://api.github.com/users/paul99","html_url":"https://github.com/paul99","followers_url":"https://api.github.com/users/paul99/followers","following_url":"https://api.github.com/users/paul99/following{/other_user}","gists_url":"https://api.github.com/users/paul99/gists{/gist_id}","starred_url":"https://api.github.com/users/paul99/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paul99/subscriptions","organizations_url":"https://api.github.com/users/paul99/orgs","repos_url":"https://api.github.com/users/paul99/repos","events_url":"https://api.github.com/users/paul99/events{/privacy}","received_events_url":"https://api.github.com/users/paul99/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/paul99/v8m-rb/labels/r6","name":"r6","color":"bfe5bf"}],"state":"open","locked":false,"assignee":{"login":"djpesic","id":11814155,"avatar_url":"https://avatars.githubusercontent.com/u/11814155?v=3","gravatar_id":"","url":"https://api.github.com/users/djpesic","html_url":"https://github.com/djpesic","followers_url":"https://api.github.com/users/djpesic/followers","following_url":"https://api.github.com/users/djpesic/following{/other_user}","gists_url":"https://api.github.com/users/djpesic/gists{/gist_id}","starred_url":"https://api.github.com/users/djpesic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/djpesic/subscriptions","organizations_url":"https://api.github.com/users/djpesic/orgs","repos_url":"https://api.github.com/users/djpesic/repos","events_url":"https://api.github.com/users/djpesic/events{/privacy}","received_events_url":"https://api.github.com/users/djpesic/received_events","type":"User","site_admin":false},"milestone":null,"comments":4,"created_at":"2015-10-30T05:50:12Z","updated_at":"2015-11-25T19:47:32Z","closed_at":null,"body":"Create optimization to (conditionally) replace normal jalr() and jr() which have delay-slots, with the new r6 compact jump instructions jialc() and jic(). \r\n\r\nThis should great benefit Call(), Jump() and Ret() operations. Most of those currently do not fill their delay-slots, so we waste an instruction slot with a nop().\r\n\r\nPlease do note that jialc() and jic() do _not_ have forbidden slots either, so no special guards are necessary.\r\n\r\nHere are a few more implementation notes, I'm sure I will add more later:\r\n\r\n* Many Ret() functions _do_ use an instruction in delay slot: `__ Ret(USE_DELAY_SLOT);`\r\n  * In this case just use the older form of instruction with `jr(ra)`\r\n* Take a close look at the multiple versions of `MacroAssembler::Call()` (and corresponding `MacroAssembler::CallSize())`, and `MacroAssembler::Jump()`\r\n* There are also `MacroAssembler::Jalr()` and `MacroAssembler::Jr()` to labels. (probably these names should be generalized).\r\n* I am pretty sure there are spots where we patch sequences with jalr() or jr(). These need to found and fixed. However may decide to defer implementation on some if the cases are really tricky."},"comment":{"url":"https://api.github.com/repos/paul99/v8m-rb/issues/comments/159713306","html_url":"https://github.com/paul99/v8m-rb/issues/200#issuecomment-159713306","issue_url":"https://api.github.com/repos/paul99/v8m-rb/issues/200","id":159713306,"user":{"login":"paul99","id":131475,"avatar_url":"https://avatars.githubusercontent.com/u/131475?v=3","gravatar_id":"","url":"https://api.github.com/users/paul99","html_url":"https://github.com/paul99","followers_url":"https://api.github.com/users/paul99/followers","following_url":"https://api.github.com/users/paul99/following{/other_user}","gists_url":"https://api.github.com/users/paul99/gists{/gist_id}","starred_url":"https://api.github.com/users/paul99/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paul99/subscriptions","organizations_url":"https://api.github.com/users/paul99/orgs","repos_url":"https://api.github.com/users/paul99/repos","events_url":"https://api.github.com/users/paul99/events{/privacy}","received_events_url":"https://api.github.com/users/paul99/received_events","type":"User","site_admin":false},"created_at":"2015-11-25T19:47:32Z","updated_at":"2015-11-25T19:47:32Z","body":"The gist's above do not open for me. I am logged into github in this browser. Sorry I did not notice sooner,  I only had time to look into this now. Can you upload code as CL, or as a branch on github? Maybe text listing of the fails here in the issue? (also, regardless of gist, diff, or CL, please let me know what git revision this builds on top of (e.g., what rev you tested))"}}