{"action":"opened","issue":{"url":"https://api.github.com/repos/weidai11/cryptopp/issues/362","repository_url":"https://api.github.com/repos/weidai11/cryptopp","labels_url":"https://api.github.com/repos/weidai11/cryptopp/issues/362/labels{/name}","comments_url":"https://api.github.com/repos/weidai11/cryptopp/issues/362/comments","events_url":"https://api.github.com/repos/weidai11/cryptopp/issues/362/events","html_url":"https://github.com/weidai11/cryptopp/issues/362","id":200611196,"number":362,"title":"Fix include logic for ARM headers under Apple and LLVM Clang","user":{"login":"noloader","id":3538226,"avatar_url":"https://avatars.githubusercontent.com/u/3538226?v=3","gravatar_id":"","url":"https://api.github.com/users/noloader","html_url":"https://github.com/noloader","followers_url":"https://api.github.com/users/noloader/followers","following_url":"https://api.github.com/users/noloader/following{/other_user}","gists_url":"https://api.github.com/users/noloader/gists{/gist_id}","starred_url":"https://api.github.com/users/noloader/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/noloader/subscriptions","organizations_url":"https://api.github.com/users/noloader/orgs","repos_url":"https://api.github.com/users/noloader/repos","events_url":"https://api.github.com/users/noloader/events{/privacy}","received_events_url":"https://api.github.com/users/noloader/received_events","type":"User","site_admin":false},"labels":[{"id":308638257,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/arm","name":"arm","color":"e11d21","default":false},{"id":308638296,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/arm64","name":"arm64","color":"0052cc","default":false},{"id":306592264,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/clang-3.5","name":"clang-3.5","color":"e99695","default":false},{"id":306592328,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/clang-3.6","name":"clang-3.6","color":"e99695","default":false},{"id":309746789,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/clang-3.7","name":"clang-3.7","color":"e99695","default":false},{"id":309746832,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/clang-3.8","name":"clang-3.8","color":"e99695","default":false},{"id":447686205,"url":"https://api.github.com/repos/weidai11/cryptopp/labels/clang-3.9","name":"clang-3.9","color":"e99695","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-01-13T11:43:52Z","updated_at":"2017-01-13T11:43:52Z","closed_at":null,"body":"We have specialized ARM implementations for a few functions, including CRC32, Carryless Multiply and SHA-1. Its now showing some cracks under Apple Clang. It appears Apple Clang does not provide `<arm_acle.h>` (we knew that), and it also disgorges `PMULL` and `PMULL2` from the Crypto gear (that's news to us).\r\n\r\nFrom the comment for [Commit ](https://github.com/weidai11/cryptopp/commit/d3bb0e13def80a4bf59ea324eed80becdf0045ce):\r\n\r\nIt looks like we still have some work to get `cpu.h` in order due to Clang...\r\n\r\nTesting under iOS for ARM64/Aarch64. This is the ARM cpu feature detection code in `cpu.cpp`. Its testing for carryless multiply instructions.\r\n\r\n> ```\r\n> clang++ -DNDEBUG -g2 -Os -fPIC -pipe -Wall -miphoneos-version-min=7 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.2.sdk -stdlib=libc++ -c cpu.cpp\r\n> cpu.cpp:486:9: error: unknown type name 'poly64_t'\r\n>                 const poly64_t a1={2}, b1={3};\r\n>                       ^\r\n> cpu.cpp:486:28: error: expected ';' at end of declaration\r\n>                 const poly64_t a1={2}, b1={3};\r\n>                                          ^\r\n>                                          ;\r\n> cpu.cpp:487:9: error: unknown type name 'poly64x2_t'; did you mean\r\n>       'poly16x4x2_t'?\r\n>                 const poly64x2_t a2={4,5}, b2={6,7};\r\n>                       ^~~~~~~~~~\r\n>                       poly16x4x2_t\r\n> ```"}}
{"actor":{"display_login":"noloader"}}