{"action":"created","issue":{"url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/119","repository_url":"https://api.github.com/repos/CTSRD-CHERI/clang","labels_url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/119/labels{/name}","comments_url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/119/comments","events_url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/119/events","html_url":"https://github.com/CTSRD-CHERI/clang/issues/119","id":211082886,"number":119,"title":"clang assertion on atomic_flag_clear_explicit","user":{"login":"trasz","id":1238567,"avatar_url":"https://avatars3.githubusercontent.com/u/1238567?v=3","gravatar_id":"","url":"https://api.github.com/users/trasz","html_url":"https://github.com/trasz","followers_url":"https://api.github.com/users/trasz/followers","following_url":"https://api.github.com/users/trasz/following{/other_user}","gists_url":"https://api.github.com/users/trasz/gists{/gist_id}","starred_url":"https://api.github.com/users/trasz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trasz/subscriptions","organizations_url":"https://api.github.com/users/trasz/orgs","repos_url":"https://api.github.com/users/trasz/repos","events_url":"https://api.github.com/users/trasz/events{/privacy}","received_events_url":"https://api.github.com/users/trasz/received_events","type":"User","site_admin":false},"labels":[{"id":10230857,"url":"https://api.github.com/repos/CTSRD-CHERI/clang/labels/bug","name":"bug","color":"fc2929","default":true},{"id":10230858,"url":"https://api.github.com/repos/CTSRD-CHERI/clang/labels/duplicate","name":"duplicate","color":"cccccc","default":true}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2017-03-01T13:35:40Z","updated_at":"2017-03-01T13:48:38Z","closed_at":"2017-03-01T13:37:31Z","body":"LLVM branch merge-2017-01-18, looks like this:\r\n\r\n```\r\nfatal error: error in backend: Cannot select: 0x805a5a340: ch = AtomicStore<Volatile ST1[%17(addrspace=200)]> 0x805a5a4e0, 0x805a5a0d0, 0x805a5a410\r\n  0x805a5a0d0: iFATPTR,ch = CopyFromReg 0x80583c8b0, Register:iFATPTR %vreg1\r\n    0x805a5a750: iFATPTR = Register %vreg1\r\n  0x805a5a410: i32,ch = load<LD1[%15(addrspace=200)], anyext from i8> 0x80583c8b0, 0x805a5a5b0, undef:iFATPTR\r\n    0x805a5a5b0: iFATPTR,ch = CopyFromReg 0x80583c8b0, Register:iFATPTR %vreg0\r\n      0x805a57c30: iFATPTR = Register %vreg0\r\n    0x805a57af8: iFATPTR = undef\r\nIn function: atomic_flag_clear_explicit\r\n```\r\n\r\nTo reproduce, build with \"-mabi=sandbox  -target cheri-unknown-freebsd -c\"; preprocessed test case attached.\r\n\r\n[test-E.c.txt](https://github.com/CTSRD-CHERI/clang/files/810849/test-E.c.txt)"},"comment":{"url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/comments/283343995","html_url":"https://github.com/CTSRD-CHERI/clang/issues/119#issuecomment-283343995","issue_url":"https://api.github.com/repos/CTSRD-CHERI/clang/issues/119","id":283343995,"user":{"login":"davidchisnall","id":404454,"avatar_url":"https://avatars0.githubusercontent.com/u/404454?v=3","gravatar_id":"","url":"https://api.github.com/users/davidchisnall","html_url":"https://github.com/davidchisnall","followers_url":"https://api.github.com/users/davidchisnall/followers","following_url":"https://api.github.com/users/davidchisnall/following{/other_user}","gists_url":"https://api.github.com/users/davidchisnall/gists{/gist_id}","starred_url":"https://api.github.com/users/davidchisnall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidchisnall/subscriptions","organizations_url":"https://api.github.com/users/davidchisnall/orgs","repos_url":"https://api.github.com/users/davidchisnall/repos","events_url":"https://api.github.com/users/davidchisnall/events{/privacy}","received_events_url":"https://api.github.com/users/davidchisnall/received_events","type":"User","site_admin":false},"created_at":"2017-03-01T13:48:38Z","updated_at":"2017-03-01T13:48:38Z","body":"This is an LLVM bug.  It looks as if we're missing a pattern for a one-byte store.  Test case should be:\r\n\r\n```\r\n_Atomic(_Bool) obj;\r\nvoid fail(void)\r\n{\r\n  obj = 1;\r\n}\r\n```\r\n"}}
{"actor":{"display_login":"davidchisnall"}}