Haider Zeeshan (CC/ESM1) via llvm-dev
2017-Feb-03 15:13 UTC
[llvm-dev] Clang 5.0 support for armv8 64 bit with neon and auto vectorization
Thanks Peter and Tim. Being that said, can I be sure that for 64 bit arm architectures (e.g. arm cortex A57) the neon feature and auto-vectorization is supported as default by clang 5.0? Because for us these two features are deal breaking for compiler evaluation. Mit freundlichen Grüßen / Best regards Zeeshan Haider Chassis Systems Control, Engineering Software Coordination, Software Mainstream Management, Methods Group 1 (CC/ESM1) Robert Bosch GmbH | Postfach 16 61 | 71226 Leonberg | GERMANY | www.bosch.com Tel. +49(711)811-47379 | Fax +49(711)811-0 | Zeeshan.Haider at de.bosch.com Sitz: Stuttgart, Registergericht: Amtsgericht Stuttgart, HRB 14000; Aufsichtsratsvorsitzender: Franz Fehrenbach; Geschäftsführung: Dr. Volkmar Denner, Dr. Stefan Asenkerschbaumer, Dr. Rolf Bulander, Dr. Stefan Hartung, Dr. Markus Heyn, Dr. Dirk Hoheisel, Christoph Kübel, Uwe Raschke, Dr. Werner Struth, Peter Tyroller -----Original Message----- From: Tim Northover [mailto:t.p.northover at gmail.com] Sent: Freitag, 3. Februar 2017 16:02 To: Haider Zeeshan (CC/ESM1) <Zeeshan.Haider at de.bosch.com> Cc: llvm-dev at lists.llvm.org Subject: Re: [llvm-dev] Clang 5.0 support for armv8 64 bit with neon and auto vectorization On 3 February 2017 at 00:48, Haider Zeeshan (CC/ESM1) via llvm-dev <llvm-dev at lists.llvm.org> wrote:> clang.exe -target armv8 -fslp-vectorize-aggressive -mfpu=neon > -mfloat-abi=hard -c test.cppPeter's advice is good (-mfpu and -mfloat-abi aren't needed). But also note that "-target armv8" actually targets 32-bit ARM (v8 CPUs usually support both modes). You probably want to specify a full triple for the target, maybe "-target aarch64-linux-gnu", otherwise the OS part might default to Windows since that's where you're running. Clang doesnn't support Windows on AArch64. Cheers. Tim.
Tim Northover via llvm-dev
2017-Feb-03 17:05 UTC
[llvm-dev] Clang 5.0 support for armv8 64 bit with neon and auto vectorization
Hi Haider, On 3 February 2017 at 07:13, Haider Zeeshan (CC/ESM1) <Zeeshan.Haider at de.bosch.com> wrote:> Being that said, can I be sure that for 64 bit arm architectures (e.g. arm cortex A57) the neon feature and auto-vectorization is supported as default by clang 5.0?Yes, unless something has gone horribly wrong they will be. The obvious quick test would be to compile something trivial like void foo(float *arr) { for (int i = 0; i < 128; ++i) arr[i] += 1; } and look at the output. Tim.
Haider Zeeshan (CC/ESM1) via llvm-dev
2017-Feb-03 17:15 UTC
[llvm-dev] Clang 5.0 support for armv8 64 bit with neon and auto vectorization
One more thing, setting up clang 5,0 on windows, I have issues compiling libcxx project. Is it supported to be built with Visual studio or MinGW make files? Mit freundlichen Grüßen / Best regards Zeeshan Haider CC/ESM1 Tel. +49(711)811-47379 -----Original Message----- From: Tim Northover [mailto:t.p.northover at gmail.com] Sent: Freitag, 3. Februar 2017 18:05 To: Haider Zeeshan (CC/ESM1) <Zeeshan.Haider at de.bosch.com> Cc: llvm-dev at lists.llvm.org Subject: Re: [llvm-dev] Clang 5.0 support for armv8 64 bit with neon and auto vectorization Hi Haider, On 3 February 2017 at 07:13, Haider Zeeshan (CC/ESM1) <Zeeshan.Haider at de.bosch.com> wrote:> Being that said, can I be sure that for 64 bit arm architectures (e.g. arm cortex A57) the neon feature and auto-vectorization is supported as default by clang 5.0?Yes, unless something has gone horribly wrong they will be. The obvious quick test would be to compile something trivial like void foo(float *arr) { for (int i = 0; i < 128; ++i) arr[i] += 1; } and look at the output. Tim.