[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-06-03 Thread Lucas Prates via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8beaba13b8a6: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts (authored by pratlucas). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-06-02 Thread Eli Friedman via Phabricator via cfe-commits
efriedma accepted this revision. efriedma added a comment. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721 ___ cfe-commits mailing list

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-06-02 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas marked 5 inline comments as done. pratlucas added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:10334 Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(VTy)); -auto Alignment = CharUnits::fromQuantity( -BuiltinID ==

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-06-02 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 267905. pratlucas added a comment. Addressing review comments and extending tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721 Files:

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-27 Thread Eli Friedman via Phabricator via cfe-commits
efriedma added a comment. I'm not completely happy with using EmitPointerWithAlignment here... but I guess it's the same thing we do for 32-bit ARM, so it must be mostly usable in practice. I'd like to see some tests in clang/test/CodeGen/aarch64-neon-intrinsics.c showing what happens if you

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-27 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 266504. pratlucas added a comment. Hi @efriedma and @plotf, Thank you the reduced test and for reverting the original patch. I've updated it to avoid the issue while still capturing the proper argument alignment. Do you mind taking a look before a reland

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Puyan Lotfi via Phabricator via cfe-commits
plotfi added a subscriber: echristo. plotfi added a comment. @pratlucas please reland once the bugzilla issue is resolved and the testsuite builds for aarch64. Thanks @echristo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Puyan Lotfi via Phabricator via cfe-commits
plotfi added a comment. Reduced crash case even further: void f() { signed char d[16]; __builtin_neon_vld1q_v(d, 32); } Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Puyan Lotfi via Phabricator via cfe-commits
plotfi added a comment. After reducing the test case it looks the same as the bugzilla filing, running `clang --target=aarch64-unknown-linux-gnu -c` on the following does it: typedef signed char int8_t; typedef __attribute__((neon_vector_type(16))) int8_t int8x16_t; typedef struct

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Puyan Lotfi via Phabricator via cfe-commits
plotfi added a comment. @efriedma I am also seeing a similar crash in the llvm-test-suite for llvm-test-suite/SingleSource/UnitTests/Vector/NEON/simple.c I will try and reduce the case. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Eli Friedman via Phabricator via cfe-commits
efriedma added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:10331 +auto Alignment = CGM.getNaturalPointeeTypeAlignment( +E->getArg(0)->IgnoreParenCasts()->getType()); Ops[0] = Builder.CreateBitCast(Ops[0], llvm::PointerType::getUnqual(VTy));

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Eli Friedman via Phabricator via cfe-commits
efriedma added a comment. This caused https://bugs.llvm.org/show_bug.cgi?id=46084 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721 ___ cfe-commits mailing list

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-26 Thread Lucas Prates via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG98cad555e291: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts (authored by pratlucas). Changed prior to commit: https://reviews.llvm.org/D79721?vs=263188=266138#toc

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-20 Thread Oliver Stannard (Linaro) via Phabricator via cfe-commits
ostannard accepted this revision. ostannard added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-20 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79721/new/ https://reviews.llvm.org/D79721 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D79721: [Clang][AArch64] Capturing proper pointer alignment for Neon vld1 intrinsicts

2020-05-11 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added subscribers: cfe-commits, danielkiss, kristof.beyls. Herald added a project: clang. pratlucas added reviewers: t.p.northover, ostannard, pcc. During CodeGen for AArch64 Neon intrinsics, Clang was incorrectly assuming all the pointers from which loads