[PATCH] D71374: Improve support of GNU mempcpy

2020-01-09 Thread serge via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGcee4a1c95742: Improve support of GNU mempcpy (authored by serge-sans-paille). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.

[PATCH] D71374: Improve support of GNU mempcpy

2020-01-09 Thread Dávid Bolvanský via Phabricator via cfe-commits
xbolva00 accepted this revision. xbolva00 added a comment. This revision is now accepted and ready to land. LG Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 _

[PATCH] D71374: Improve support of GNU mempcpy

2020-01-09 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. @xbolva00 : gentle reminder :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___ cfe-commits mailing list cfe-commits@list

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-14 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. @xbolva00 : validation is ok: https://github.com/serge-sans-paille/llvm-project/pull/5/checks Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 __

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread serge via Phabricator via cfe-commits
serge-sans-paille updated this revision to Diff 233797. serge-sans-paille added a comment. Added test cases Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 Files: clang/include/clang/Basic/Builtins.def

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread Dávid Bolvanský via Phabricator via cfe-commits
xbolva00 added a comment. > @xbolva00 should I remove the lowering part and leave it to llvm? Probably okay to leave it + inbounds, but please add a test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. [[edited the example to reflect actual state]] Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___ cfe-commits mailing list c

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. In D71374#1783245 , @xbolva00 wrote: > LLVM already converts mempcpy to memcpy.. Indeed, the clang version I was using as base reference was clang-9, and the mempcpy optimisation at IR level got introduced after that.

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread Dávid Bolvanský via Phabricator via cfe-commits
xbolva00 added a comment. LLVM already converts mempcpy to memcpy.. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___ cfe-commits mailing list cfe-commits@lis

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-13 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. In D71374#1783032 , @Jim wrote: > I am curious what is difference of code generation after applying your > changes? Before, when compiling #define _GNU_SOURCE #include void* foo(void* to, void* from, unsigne

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-12 Thread Dávid Bolvanský via Phabricator via cfe-commits
xbolva00 added a comment. Please add a IR codegen test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-12 Thread Jim Lin via Phabricator via cfe-commits
Jim added a comment. I am curious what is difference of code generation after applying your changes? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___ cfe-com

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-12 Thread serge via Phabricator via cfe-commits
serge-sans-paille updated this revision to Diff 233587. serge-sans-paille added a comment. @Jim obviously :-) Thanks for spotting that. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 Files: clang/include

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-12 Thread Jim Lin via Phabricator via cfe-commits
Jim added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:2524 +else + return RValue::get(Builder.CreateGEP(Dest.getPointer(), SizeVal)); } Is it an error here? It should be: ``` if (BuiltinID == Builtin::BImempcpy || BuiltinID == B

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-12 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. In D71374#1780402 , @serge-sans-paille wrote: > On going validation: > https://github.com/serge-sans-paille/llvm-project/pull/5/checks Validation succeeded, waiting for review! Repository: rG LLVM Github Monorepo

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-11 Thread serge via Phabricator via cfe-commits
serge-sans-paille added a comment. On going validation: https://github.com/serge-sans-paille/llvm-project/pull/5/checks Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71374/new/ https://reviews.llvm.org/D71374 ___

[PATCH] D71374: Improve support of GNU mempcpy

2019-12-11 Thread serge via Phabricator via cfe-commits
serge-sans-paille created this revision. serge-sans-paille added a reviewer: ddunbar. Herald added a project: clang. Herald added a subscriber: cfe-commits. - Lower to the memcpy intrinsic - Raise warnings when size/bounds are known Repository: rG LLVM Github Monorepo https://reviews.llvm.org