Originally posted by Ansla
View Post
I`d really like the accesses to errno go away, it doesnt make sense since the C Standard doesnt guarantee the functions will set errno (and noone sane will write portable code depending on this behaviour). On Linux however they usually do (glibc) and optimizing this can have sideeffects.
My point wasnt to slam GCC, but to note that the math flags can have really big influence on benchmarks. Whetstone was 2x-3x times faster with -ffastm-math on my tests as I recall. To make benchmarks more even. this should be taken into account.
Code:
test.o: file format elf32-littlearm Disassembly of section .text: 00000000 <test>: 0: b508 push {r3, lr} 2: ed2d 8b04 vpush {d8-d9} 6: eeb0 9b41 vmov.f64 d9, d1 a: f7ff fffe bl 0 <sin> e: eeb0 8b40 vmov.f64 d8, d0 12: eeb0 0b49 vmov.f64 d0, d9 16: f7ff fffe bl 0 <log> 1a: ee38 7b08 vadd.f64 d7, d8, d8 1e: ee28 0b00 vmul.f64 d0, d8, d0 22: ecbd 8b04 vpop {d8-d9} 26: ee20 0b07 vmul.f64 d0, d0, d7 2a: bd08 pop {r3, pc}
Comment