search for: mfloat

Displaying 20 results from an estimated 167 matches for "mfloat".

Did you mean: float
2017 Mar 21
3
clang 4.0.0: Invalid code for builtin floating point function with -mfloat-abi=hard -ffast-math (ARM)
Hello, clang/llvm 4.0.0 generates invalid calls for builtin functions with -mfloat-abi=hard -ffast-math. Small example fail.c: // clang -O2 -target armv7a-none-none-eabi -mfloat-abi=hard -ffast-math -S fail.c -o - extern float sinf (float x); float sin1 (float x) {return (sinf (x));} generates code to pass the parameter in r0 and expect the result in r0. The same...
2017 Mar 29
3
clang 4.0.0: Invalid code for builtin floating point function with -mfloat-abi=hard -ffast-math (ARM)
On 29 March 2017 at 02:33, Saleem Abdulrasool <compnerd at compnerd.org> wrote: > sin/cos are libm functions, and so a libcall to those need to honour the > floating point ABI requests. The calling convention to be followed there > should match `-mfloat-abi` (that is, -mfloat-abi=hard => AAPCS/VFP, > -mfloat-abi=soft => AAPCS). Exactly, but they're not, and that's the problem. Do you have any idea why -ffast-math would change their PCS for libc calls? The behaviour seems to have been by your patch (https://reviews.llvm.org/rL291...
2017 Mar 24
2
clang 4.0.0: Invalid code for builtin floating point function with -mfloat-abi=hard -ffast-math (ARM)
On 22 March 2017 at 01:38, Friedman, Eli <efriedma at codeaurora.org> wrote: >> Small example fail.c: >> >> // clang -O2 -target armv7a-none-none-eabi -mfloat-abi=hard -ffast-math >> -S fail.c -o - >> extern float sinf (float x); >> float sin1 (float x) {return (sinf (x));} I changed your example slightly to make sure we're passing the arguments, otherwise 'sin1' just becomes 'b sinf', which is "correct&q...
2012 Jul 18
2
[LLVMdev] Setting up a cross-compiler for cortex-m3
On 18 July 2012 14:33, salvatore benedetto <salvatore.benedetto at gmail.com> wrote: > but I still haven't figure out how to build for cortex-m3 > > clang -march=armv7-m -mfloat-abi=soft <something missing?> testReference.cpp -c -march should have done the trick. You can also try -mcpu=cortex-m3, or try -ccc-host-triple armv7m-none-gnueabi (or -eabi), and possibly -ccc-gcc-name code sourcery's gcc, or possibly --sysroot=code sourcery/libc -- cheers, --rena...
2016 Mar 29
1
NEON FP flags
..., FP (VFP) > > This would be similar enough to GCC, and would allow the small number > of users that care about IEEE-754 compliance to disable FP NEON on > demand. In GCC today: -mfpu=vfp is the minimum floating-point instruction set supported, the choice of which ABI you use (-mfloat-abi) is independent from the choice of floating-point hardware that exists. -mfpu=soft and -mfpu=softfp are rejected by GCC. Starting with that: -mfloat-abi=soft -> Generate library calls for all floating-point operations, do not permit Neon operations. -mfloat-abi=softfp ->...
2016 Mar 25
3
NEON FP flags
On 25 March 2016 at 04:11, Hal Finkel <hfinkel at anl.gov> wrote: > As I understand it, the fundamental property being addresses here is: Are the semantics of scalar FP math the same as vector FP math? TTI seems like a good place to expose that information. If the semantics are indeed different, then the vectorizer would require fast-math flags in order to vectorize FP operations
2012 Jul 18
0
[LLVMdev] Setting up a cross-compiler for cortex-m3
On Wed, Jul 18, 2012 at 3:52 PM, Renato Golin <rengolin at systemcall.org> wrote: > On 18 July 2012 14:33, salvatore benedetto > <salvatore.benedetto at gmail.com> wrote: >> but I still haven't figure out how to build for cortex-m3 >> >> clang -march=armv7-m -mfloat-abi=soft <something missing?> testReference.cpp -c > > -march should have done the trick. > > You can also try -mcpu=cortex-m3, > > or try -ccc-host-triple armv7m-none-gnueabi (or -eabi), I've tried with all of the following $ clang -march=armv7-m -mfloat-abi=soft -tri...
2017 Feb 03
3
Clang 5.0 support for armv8 64 bit with neon and auto vectorization
...many. We are using armv8 64bit targets for our development. We have the need to do the cross compiling for our target on windows. I have compiled clang 5.0 from the vcs git. I have tried compiling the code with following options set: clang.exe -target armv8 -fslp-vectorize-aggressive -mfpu=neon -mfloat-abi=hard -c test.cpp As you can see in the options, we require neon feature as well as auto vectorizations on armv8 (64 bit). Can you tell me that is it true that clang supports neon and auto vectorizations with 64bit arm v8 architecture? This setting says that neon is not in support, Can you exp...
2013 Nov 26
3
[LLVMdev] Targeting ARM Cortex-a9 from x86_64 with clang
...on the Zedboard [2]. It is an ARM Cortex-A9. The machine I am compiling on is an x86_64 Fedora Linux machine, using clang 3.3. I am failing to generate an executable, instead seeing an error "unrecognized option '-mfpu=neon'". $ clang -v -target armv7a-linux-eabi -mcpu=cortex-a9 -mfloat-abi=soft -mfpu=neon helloworld.c clang version 3.3 (tags/RELEASE_33/rc3) Target: armv7a--linux-eabi Thread model: posix "/usr/bin/clang" -cc1 -triple armv7--linux-eabi -S -disable-free -disable-llvm-verifier -main-file-name helloworld.c -mrelocation-model static -mdisable-fp-elim -fmath-...
2012 Jul 18
2
[LLVMdev] Setting up a cross-compiler for cortex-m3
...sion 3.2 (http://llvm.org/git/clang.git 88237bf587581026dcfc8386abf055cb201aa487) (http://llvm.org/git/llvm.git 18a1b616ea123548b61a037c4f4fea4133aac1b5) Target: x86_64-unknown-linux-gnu Thread model: posix After some more bit of searching I managed to build for cortex-a with clang -march=armv7-a -mfloat-abi=soft -ccc-host-triple arm-elf -integrated-as testReference.cpp -c but I still haven't figure out how to build for cortex-m3 clang -march=armv7-m -mfloat-abi=soft <something missing?> testReference.cpp -c If anyone can point me to some reading or shine some light on this one, I'...
2011 Jun 22
4
[LLVMdev] ARM thumb-2 instruction used for non-thumb2 CPUs
Hi, I just realized that clang produces Thumb-2 instruction in code even when older CPU type which doesn't suport Thumb-2 is specified. Here is output: # /opt/llvm/bin/clang -S -ccc-host-triple arm-unknown-freebsd -mcpu=arm926ej-s -mfloat-abi=soft -v -o rrx.S rrx.c clang version 3.0 (http://llvm.org/git/clang.git 98138cdfdee05c0afbab2b209ce8cfe4a52474e1) Target: arm-unknown-freebsd Thread model: posix "/opt/llvm/bin/clang" -cc1 -triple armv5e-unknown-freebsd -S -disable-free -main-file-name rrx.c -mrelocation-model static...
2013 Oct 14
2
[LLVMdev] MI scheduler produce badly code with inline function
...s good code, but if opt inline this function, the inline part will be scheduled as bad code. so I rewrite a simple code as attached link (foo.c), and compiled with two different methods: *method A:* *$clang -O3 foo.c -static -S -o foo.s -mllvm -enable-misched -mllvm -unroll-count=4 --target=arm -mfloat-abi=hard -mcpu=cortex-a9 -fno-vectorize -fno-slp-vectorize* * * *and* * * *method B:* *$clang foo.c -S -emit-llvm -o foo.bc --target=arm -mfloat-abi=hard -mcpu=cortex-a9 * *$opt foo.bc -O3 -unroll-count=4 -o foo.opt.bc* * * *$llc foo.opt.bc -o foo.opt.s -march=arm -mcpu=cortex-a9 -enable-misched*...
2017 Nov 26
5
Compilation issue "unsupported relocation on symbol" with clang 3.7.1
.../usr/bin/clang -DLLVM_BUILD_GLOBAL_ISEL -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Iprojects/compiler-rt/lib/builtins -I../projects/compiler-rt/lib/builtins -Iinclude -I../include -fPIC -O3 -DNDEBUG -march=armv6m -mfloat-abi=soft -fno-lto -MD -MT projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.builtins-armv6m.dir/arm/aeabi_memcmp.S.o -MF projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.builtins-armv6m.dir/arm/aeabi_memcmp.S.o.d -o projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.builtins-armv6m.dir/...
2013 Nov 26
0
[LLVMdev] Targeting ARM Cortex-a9 from x86_64 with clang
On 26 November 2013 15:36, Rob Stewart <robstewart57 at gmail.com> wrote: > $ clang -v -target armv7a-linux-eabi -mcpu=cortex-a9 -mfloat-abi=soft > -mfpu=neon helloworld.c > Hi Rod, You need cross-binutils installed on your box. If you use Debian, there are packages (gcc-4.7-arm-linux-gnueabi and friends). Other distros may have similar packages, but you can always download the Linaro toolchain ( http://releases.linaro.org/l...
2013 Nov 27
3
[LLVMdev] Targeting ARM Cortex-a9 from x86_64 with clang
On 26 November 2013 16:44, Renato Golin <renato.golin at linaro.org> wrote: > On 26 November 2013 15:36, Rob Stewart <robstewart57 at gmail.com> wrote: >> >> $ clang -v -target armv7a-linux-eabi -mcpu=cortex-a9 -mfloat-abi=soft >> -mfpu=neon helloworld.c > > Hi Rod, I'm honoured. (But Rob is also OK) :-) > You need cross-binutils installed on your box. If you use Debian, there are > packages (gcc-4.7-arm-linux-gnueabi and friends). Other distros may have > similar packages, but you can...
2013 Dec 11
1
[LLVMdev] runtime performance benchmarking tools for clang
2) For lag in execution time due to floating point operations, it was clearly observed that gcc used floating point instruction FSQRT, where as clang seemed to use emulated function (?) BL SQRT. Note that we used the following flags for both clang as well as gcc compilation. -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -mtune=cortex-a8 Infact, i was surprised to see that even when " -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -mtune=cortex-a8" was used, the code generated did not use hardware vsqrt instruction, instead there was a bl sqrt instruction. Could someone poi...
2016 Mar 12
4
clang triple and clang target
...which would use vector instructions. I need to see how they look, whether it is ARM, Mips or X86. However for some reason clang would generate an error saying that a given target does not exist. Here is the command line I used: clang -S test.c -o test.sse2.x86-64.s --target=x86-unknown-linux-eabi -mfloat-abi=hard -mcpu=x86-64 -mfpu=SSE2 -fslp-vectorize-aggressive -fslp-vectorize-aggressive -fslp-vectorize -fvectorize -fno-lax-vector-conversions Here is the response I got: clang: warning: argument unused during compilation: '-mfloat-abi=hard' clang: warning: argument unused during compilati...
2018 Feb 23
2
Cross-compiling for ARM Cortex-A9 on x86
...v7a-linux-gnueabihf --sysroot=$(ARM_SYSROOT) --gcc-toolchain=$(ARM_GCC_TOOLCHAIN) -c -o translated.ll But somehow clang it is trying to use soft-float and I get the following error: 'gnu/stubs-soft.h' file not found Is there any way I can specify to use hard floating point? I have tried -mfloat-abi=hard but Clang does not recognize it. Please, let me know if there is any other information you need. Thanks in advance, Irune -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180223/ae028b76/attachment...
2013 Nov 27
0
[LLVMdev] Targeting ARM Cortex-a9 from x86_64 with clang
On 11/27/2013 07:57 AM, Rob Stewart wrote: > On 26 November 2013 16:44, Renato Golin <renato.golin at linaro.org> wrote: >> On 26 November 2013 15:36, Rob Stewart <robstewart57 at gmail.com> wrote: >>> $ clang -v -target armv7a-linux-eabi -mcpu=cortex-a9 -mfloat-abi=soft >>> -mfpu=neon helloworld.c >> Hi Rod, > I'm honoured. (But Rob is also OK) :-) > >> You need cross-binutils installed on your box. If you use Debian, there are >> packages (gcc-4.7-arm-linux-gnueabi and friends). Other distros may have >> similar...
2013 Oct 15
0
[LLVMdev] MI scheduler produce badly code with inline function
...duler changes are required for that mode to fully enforce pipeline hazards. > so I rewrite a simple code as attached link (foo.c), and compiled with two different methods: > > method A: > $clang -O3 foo.c -static -S -o foo.s -mllvm -enable-misched -mllvm -unroll-count=4 --target=arm -mfloat-abi=hard -mcpu=cortex-a9 -fno-vectorize -fno-slp-vectorize > > and > > method B: > $clang foo.c -S -emit-llvm -o foo.bc --target=arm -mfloat-abi=hard -mcpu=cortex-a9 > $opt foo.bc -O3 -unroll-count=4 -o foo.opt.bc > $llc foo.opt.bc -o foo.opt.s -march=arm -mcpu=cortex-a9 -ena...