{"action":"created","issue":{"url":"https://api.github.com/repos/chapel-lang/chapel/issues/5043","repository_url":"https://api.github.com/repos/chapel-lang/chapel","labels_url":"https://api.github.com/repos/chapel-lang/chapel/issues/5043/labels{/name}","comments_url":"https://api.github.com/repos/chapel-lang/chapel/issues/5043/comments","events_url":"https://api.github.com/repos/chapel-lang/chapel/issues/5043/events","html_url":"https://github.com/chapel-lang/chapel/issues/5043","id":195834723,"number":5043,"title":"Improving the LLVM backend","user":{"login":"mppf","id":3653132,"avatar_url":"https://avatars3.githubusercontent.com/u/3653132?v=4","gravatar_id":"","url":"https://api.github.com/users/mppf","html_url":"https://github.com/mppf","followers_url":"https://api.github.com/users/mppf/followers","following_url":"https://api.github.com/users/mppf/following{/other_user}","gists_url":"https://api.github.com/users/mppf/gists{/gist_id}","starred_url":"https://api.github.com/users/mppf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mppf/subscriptions","organizations_url":"https://api.github.com/users/mppf/orgs","repos_url":"https://api.github.com/users/mppf/repos","events_url":"https://api.github.com/users/mppf/events{/privacy}","received_events_url":"https://api.github.com/users/mppf/received_events","type":"User","site_admin":false},"labels":[{"id":195153428,"url":"https://api.github.com/repos/chapel-lang/chapel/labels/stat:%20Work%20in%20Progress","name":"stat: Work in Progress","color":"c5def5","default":false},{"id":496592747,"url":"https://api.github.com/repos/chapel-lang/chapel/labels/steal","name":"steal","color":"D3D3D3","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2016-12-15T15:29:43Z","updated_at":"2017-09-15T13:08:31Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Future Work on LLVM Performance:\r\n- [ ] Address the suggestions here: http://releases.llvm.org/4.0.0/docs/Frontend/PerformanceTips.html\r\n- [x] loop vectorization hints for forall/vectorizeOnly loops. Potentially both llvm.loop.vectorize.enable and llvm.mem.parallel_loop_access are important. See codegenOrderIndependence in CForLoop::codegen(), which is only called for the C backend right now. PR #6533\r\n- [ ] improving type-based alias analysis metadata\r\n  (use struct-path-aware TBAA)\r\n  (TBAA generation may be turned off now; search for codegenMetadata)\r\n- [ ] indicating when a load is from a variable declared 'const'\r\n  (see commit 6f0047ab7c90f456ab48f19ed59b58383a54e31f.\r\n  This is tricky because during variable initialization, a\r\n  const variable is mutable and could be read). Use LLVM invariant metadata.\r\n- [ ] investigate enabling the Polly polyhedral optimizer\r\n- [ ] (for --llvm-wide-opt) change to struct wide pointers (vs. packed)\r\n- [x] try -mllvm -use-cfl-aa for clang with --llvm-wide-opt. (It didn't seem to help; see #5533)."},"comment":{"url":"https://api.github.com/repos/chapel-lang/chapel/issues/comments/329777835","html_url":"https://github.com/chapel-lang/chapel/issues/5043#issuecomment-329777835","issue_url":"https://api.github.com/repos/chapel-lang/chapel/issues/5043","id":329777835,"user":{"login":"mppf","id":3653132,"avatar_url":"https://avatars3.githubusercontent.com/u/3653132?v=4","gravatar_id":"","url":"https://api.github.com/users/mppf","html_url":"https://github.com/mppf","followers_url":"https://api.github.com/users/mppf/followers","following_url":"https://api.github.com/users/mppf/following{/other_user}","gists_url":"https://api.github.com/users/mppf/gists{/gist_id}","starred_url":"https://api.github.com/users/mppf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mppf/subscriptions","organizations_url":"https://api.github.com/users/mppf/orgs","repos_url":"https://api.github.com/users/mppf/repos","events_url":"https://api.github.com/users/mppf/events{/privacy}","received_events_url":"https://api.github.com/users/mppf/received_events","type":"User","site_admin":false},"created_at":"2017-09-15T13:08:31Z","updated_at":"2017-09-15T13:08:31Z","author_association":"CONTRIBUTOR","body":"- [ ] try dynamically linking Chapel with LLVM libraries to reduce the size of the binary, load times"}}
{"actor":{"display_login":"mppf"}}