search for: sincos

Displaying 20 results from an estimated 63 matches for "sincos".

2016 Jun 15
2
Sincos for X86_64's GNUX32 and ARM's GNUEABI/GNUEABIHF enviroments
...and X86_64 environments that looks like it might be unintentional. I thought I should ask about it here since that patch has a '[mips]' tag and therefore might not be noticed by someone who knows. I've noticed that the GNUX32 and GNUEABI/GNUEABIHF environments don't make use of the sincos libcall like the GNU environment does because the guarding condition for this is 'TT.getEnvironment() == Triple::GNU'. The comment in canCombineSinCosLibcall() in LegalizeDAG.cpp suggests that it's intending to use sincos for all GNU environments so I'm wondering whether the exclusi...
2011 Sep 15
2
[LLVMdev] sincos functions
...s trying to compare the performance of icc, gcc and llvm on the program almabench.c in Coyote Benchmark suite. Here is a line of code from the program. da = da + (ca[np][k] * cos(arga) + sa[np][k] * sin(arga)) * 0.0000001; gcc and icc are performing way better than llvm as they are using 'sincos' library function to compute the sin and the cos of the argument in a single shot. However llvm is computing sin and cos seperately. Is there any compiler option which can enable the code generator to use 'sincos' function against 'sin' and 'cos' functions seperately....
2011 Sep 15
0
[LLVMdev] sincos functions
...icc, gcc and llvm on the > program almabench.c in Coyote Benchmark suite. Here is a line of code > from the program. > > > da = da + (ca[np][k] * cos(arga) + sa[np][k] * sin(arga)) * 0.0000001; > > gcc and icc are performing way better than llvm as they are using > 'sincos' library function to compute the sin and the cos of the > argument in a single shot. However llvm is computing sin and cos > seperately. > > Is there any compiler option which can enable the code generator to > use 'sincos' function against 'sin' and 'cos'...
2013 Jan 22
2
[LLVMdev] sincos optimization
Hi, I'm looking at http://llvm.org/bugs/show_bug.cgi?id=13204 which involves converting calls to sin and cos to sincos (when available) Initially I thought about transforming calls to sinf/cosf to sincosf. However, I don't think this is a legal transformation given that a declaration for a function called sinf is not necessarily the standard library function. Therefore it makes sense to transform intrinsic ca...
2013 Jan 22
0
[LLVMdev] sincos optimization
On 22/01/13 05:30, Redmond, Paul wrote: [...] > I'm looking at http://llvm.org/bugs/show_bug.cgi?id=13204 which involves converting calls to sin and cos to sincos (when available) > > Initially I thought about transforming calls to sinf/cosf to sincosf. However, I don't think this is a legal transformation given that a declaration for a function called sinf is not necessarily the standard library function. I've actually just dealt with this -...
2013 Jan 22
1
[LLVMdev] sincos optimization
Hi David, On 2013-01-22, at 5:59 AM, David Given wrote: > ...and the code that actually does it is here: > > lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp > > Look for SelectionDAGBuilder::visitUnaryFloatCall() and visitCall(). > > It appears that such functions are only promoted if they're declared > readnone, which provides some protection against overriding
2016 Apr 04
2
RFC: A proposal for vectorizing loops with calls to math functions using SVML
Hi Sanjay, For sincos calls, I’m currently just going through isTriviallyVectorizable(), which was good enough to get things working so that I could test the translation. I don’t see why this cannot be changed to use addVectorizableFunctionsFromVecLib(). The other functions that I’m working with are already vectorized u...
2016 Apr 01
2
RFC: A proposal for vectorizing loops with calls to math functions using SVML
...g supported precisions. The compiler will select the most appropriate variant based on the IMF attributes. See #2. 2) An interface to query for the appropriate svml function variant based on the scalar function name and IMF attributes. 3) For calls to math functions that store to memory (e.g., sincos), additional analysis of the pointer arguments is beneficial in order to generate the best performing load/store instructions. ====================== GCC/ICC compatibility ====================== The initial implementation will involve the translation of 6 svml functions, which include sin,...
2015 Feb 26
3
[RFC PATCH v2] Encode optimize using libNe10
...rribe/src/xiph/git/arm/Ne10/inc conftest.c -L/home/tterribe/src/xiph/git/arm/Ne10/build/modules -lNE10 >&5 /home/tterribe/src/xiph/git/arm/Ne10/build/modules/libNE10.a(NE10_fft.c.o): In function `ne10_fft_generate_twiddles_line_int32': NE10_fft.c:(.text+0x6e): undefined reference to `sincos' NE10_fft.c:(.text+0x82): undefined reference to `floor' NE10_fft.c:(.text+0x96): undefined reference to `floor' /home/tterribe/src/xiph/git/arm/Ne10/build/modules/libNE10.a(NE10_fft.c.o): In function `ne10_fft_generate_twiddles_line_float32': NE10_fft.c:(.text+0x138): undefined re...
2014 Jun 16
2
[LLVMdev] codeGen, instruction write one value to the input register.
...t1Regs:$a, Int1Regs:$b))]>; “ which takes two inputs and write the result to the $dst register. Then how to define a binary instruction which returns two results, one is written to the $dst register, and the other one is written to one of the inputs? I mean, to implement something like: ” Type sincos( Type input, Type * cosVal) “ the instruction will compute sin and cos value of input, return the sin result and write the cos result to cosVal. Is there anything special constraints or something I should put onto the cos register? Best Kevin -------------- next part -------------- An HTML a...
2013 Jun 21
0
[LLVMdev] ExpandDivRemLibCall vs. AEABI
Hi Renato, > * Have some call-back mechanism, possibly upon a flag > (HasSpecialDivRemLowering), and update the remainder result If you setOperationAction on SDIVREM and UDIVREM to Custom you can expand the rtlib call appropriately yourself. There's precedent for sincos on Darwin systems (both ARM and x86) and in AArch64 for basically every operation on fp128. Cheers. Tim.
2013 Mar 02
0
[LLVMdev] dragon egg + llvm for fortran to c translation
...lvmdev> > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130302/e040c8c3/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: sincos.sincos_loop_1_kernelgen.c.device.F90 Type: application/octet-stream Size: 425 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130302/e040c8c3/attachment.obj> -------------- next part -------------- A non-text attachment was scrubbed... Name: sincos.sinco...
2013 Jun 21
3
[LLVMdev] ExpandDivRemLibCall vs. AEABI
Folks, I'm working on bug 16387: "clang doesn't produce ARM EABI-compliant modulo runtime function" http://llvm.org/bugs/show_bug.cgi?id=16387 And I need some pointers. I've changed ARMISelLowering::ARMTargetLowering::ARMTargetLowering() to associate __aeabi_idivmod variants to RTLIB::{U,S}DIVREM_* library calls, but now I need to teach the expansion that on AEABI case,
2013 Mar 02
2
[LLVMdev] dragon egg + llvm for fortran to c translation
Thank you for your reply Dmitry! It would not be too great a deal, if I need to use previous versions as long as it would get the desired results :) Would the code from the IR be portable to different C compilers? I guess the resulting C code will not have too much resemblance to the input? cheers Philipp On 03/01/2013 05:02 PM, Dmitry Mikushin wrote: > DragonEgg only converts GCC's IR
2015 Feb 26
0
[RFC PATCH v2] Encode optimize using libNe10
.../arm/Ne10/inc conftest.c > -L/home/tterribe/src/xiph/git/arm/Ne10/build/modules -lNE10 >&5 > /home/tterribe/src/xiph/git/arm/Ne10/build/modules/libNE10.a(NE10_fft.c.o): > In function `ne10_fft_generate_twiddles_line_int32': > NE10_fft.c:(.text+0x6e): undefined reference to `sincos' > NE10_fft.c:(.text+0x82): undefined reference to `floor' > NE10_fft.c:(.text+0x96): undefined reference to `floor' > /home/tterribe/src/xiph/git/arm/Ne10/build/modules/libNE10.a(NE10_fft.c.o): > In function `ne10_fft_generate_twiddles_line_float32': > NE10_fft.c:(.t...
2003 May 20
2
mdct_backward with fused muladd?
...essary. What values of 'n' does mdct_backward typically get called with? Should it be pretty simple to guarantee proper alignment of the input buffers to a 16-byte boundary? Can I get away with 16x16 multiplies without too much audio degredation? I also would be better off without a big sincos lut as pointed out by Segher Boessenkool back in March. Thanks again. Just to show that I'm not a total leech, here's a slightly faster (at least on the PS2) version of bitrev12 that doesn't use any luts (thanks to http://aggregate.org/MAGIC/) STIN int bitrev12(int x){ x = ((x &...
2011 Dec 06
0
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Hi Alexander, I had the same error: sincos: /home/marcusmae/rpmbuild/BUILD/llvm/lib/VMCore/PassManager.cpp:635: void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI && "Expected required passes to be initialized"' failed. The solution was to add: PassRegistry &Registry = *PassRegistry::getPass...
2012 Dec 21
1
Problem compiling Samba4, Python installed in nonstandard location
...s/complexobject.c:139: undefined reference to `hypot'/usr/src/Python-2.7.3/Objects/complexobject.c:140: undefined reference to `pow'/usr/src/Python-2.7.3/Objects/complexobject.c:141: undefined reference to `atan2'/usr/src/Python-2.7.3/Objects/complexobject.c:143: undefined reference to `sincos'/usr/src/Python-2.7.3/Objects/complexobject.c:144: undefined reference to `exp'/usr/src/Python-2.7.3/Objects/complexobject.c:145: undefined reference to `log'/opt/python2/lib/libpython2.7.a(complexobject.o): In function `_Py_c_abs':/usr/src/Python-2.7.3/Objects/complexobject.c:210:...
2018 Oct 05
0
vkd3d release 1.1
...to DXGI_FORMATs. - Support for more DXGI formats. - Various bug fixes. *** libvkd3d-shader - Support for geometry shaders. - Pretty printing is implemented for shader code extracted from DXBC. - Clip and cull distances are supported. - Support for more shader instructions: - round_ne, - sincos, - ineg, - continue, - continuec, - gather4_po, - gather4_po_c, - gather4_c. - Texel offsets are supported. - Various shader translation fixes. *** libvkd3d-utils - Vulkan WSI extensions are detected at runtime. *** build - Demos are not built by default. - libxcb is now an opt...
2011 Dec 06
2
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Dear lazydev, I'm writing an instrumentation pass that depends on AliasAnalysis. My getAnalysisUsage() looks as follows: 2453 void ThreadSanitizer::getAnalysisUsage(AnalysisUsage &AU) const { 2454 AU.addRequired<TargetData>(); 2455 AU.addRequired<AliasAnalysis>(); 2456 } and the pass initialization: 2668 char ThreadSanitizer::ID = 0; 2669