Displaying 20 results from an estimated 400 matches similar to: "[RFC] Improving integer divide optimization (related to D12082)"
2015 Aug 20
2
[RFC] Improving integer divide optimization (related to D12082)
> On Aug 19, 2015, at 3:48 PM, escha via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
>
>> On Aug 19, 2015, at 1:45 PM, Steve King via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>>
>> In the targets I know, shifts are
>> cheaper than divides in both speed and size.
>
> From what I remember, udiv by
2015 Aug 20
3
[RFC] Improving integer divide optimization (related to D12082)
> On Aug 20, 2015, at 9:46 AM, Steve King <steve at metrokings.com> wrote:
>
> On Wed, Aug 19, 2015 at 10:58 PM, Mehdi Amini <mehdi.amini at apple.com> wrote:
>>
>> Isn’t the problem the fact that the patch makes it harder for a target to
>> get the generic code to reach its custom hook?
>> Now the "cheap pow2 sdiv” is merged with the generic
2015 Aug 20
2
[RFC] Improving integer divide optimization (related to D12082)
> On Aug 20, 2015, at 10:22 AM, escha <escha at apple.com> wrote:
>
>>
>> On Aug 20, 2015, at 9:59 AM, Mehdi Amini <mehdi.amini at apple.com <mailto:mehdi.amini at apple.com>> wrote:
>>
>>>
>>> On Aug 20, 2015, at 9:46 AM, Steve King <steve at metrokings.com <mailto:steve at metrokings.com>> wrote:
>>>
2011 Aug 30
2
Plotting multiple vectors in one window?
Hi all.
Using the following code:
plot(bsa, abs, col='blue', pch=16, xlim=c(0, 25), ylim=c(0.0, 1.0), xlab =
expression(paste(BSA, " (", mu, "g)", sep="")), ylab=expression(A[595]))
plot(unknown1, abs2, col='blue', pch=16, xlim=c(0, 25), ylim=c(0.0, 1.0),
xlab = expression(paste(Unknown_1, " (", mu, "g)", sep="")),
2012 Nov 17
2
problem with "any" function
Dear R users,
I have the "any" function of R
any(ind.c, ind.r, ind.sgn)
all are logical factors
it works fine when any of three is true
but when they are combined it doesnt work.
i tried
this
any(ind.c, ind.r, ind.sgn,((ind.c==TRUE) & (ind.r==TRUE)),
((ind.c==TRUE) & (ind.sgn==TRUE)),((ind.r==TRUE) & (ind.sgn==TRUE)),
((ind.c==TRUE) & (ind.r==TRUE) &
2013 Apr 24
5
[LLVMdev] Optimize away sqrt in simple cases?
> This is not true. The mathematically correct result for sqrt might not be a representable value in floating point, so rounding may occur between the two steps. In that case, pow2(sqrt(x)) != x.
>
> --Owen
I think what Christoph is saying is that x will always be at least as
accurate as pow2(sqrt(x)), so it's only unsafe in so far as one's code
is actually depending on an
2013 Apr 24
0
[LLVMdev] Optimize away sqrt in simple cases?
On Apr 23, 2013, at 7:15 PM, Stephen Lin <swlin at post.harvard.edu> wrote:
>> This is not true. The mathematically correct result for sqrt might not be a representable value in floating point, so rounding may occur between the two steps. In that case, pow2(sqrt(x)) != x.
>
> I think what Christoph is saying is that x will always be at least as
> accurate as pow2(sqrt(x)),
2001 Oct 22
1
round() doesn't (PR#1139)
R> round(100000/3, -2) - 33300
[1] -7.275958e-12
I would have hoped for 0. The problem seems to be specifically for negative
"digits". This is in 1.3.1 on Solaris 2.6 (full description at bottom).
[Apologies for making everyone read this 3 times; my bug.report() burped.]
Peter Dalgaard <p.dalgaard@biostat.ku.dk> says the problem is in fround.c,
which reads in part:
2014 Oct 16
2
Re: CF Card wear optimalisation for ext4
* Andreas Dilger <adilger@dilger.ca> hat geschrieben:
> The "lifetime writes" value has not been around forever, so if the
> filesystem was originally created and populated on an older kernel
> (e.g. using ext3) it would not contain a record of those writes.
It was created as stable ext4 in the first place. So only if there was a
stable ext4 release which didn't
2009 Dec 22
2
[LLVMdev] LegalizeDAG Error?
The LegalizeDAG.cpp file has this code in SelectionDAGLegalize::PromoteNode:
case ISD::BSWAP: {
unsigned DiffBits = NVT.getSizeInBits() - OVT.getSizeInBits();
Tmp1 = DAG.getNode(ISD::ZERO_EXTEND, dl, NVT, Tmp1);
Tmp1 = DAG.getNode(ISD::BSWAP, dl, NVT, Tmp1);
Tmp1 = DAG.getNode(ISD::SRL, dl, NVT, Tmp1,
DAG.getConstant(DiffBits, TLI.getShiftAmountTy()));
2017 Sep 13
2
How to add optimizations to InstCombine correctly?
Hi,
I am working on PR34474 and try to add a new optimization to
InstCombine. Like in other parts of the visitMul function I add a Shl
through the IR builder and create a new BinaryOp which I return from
visitMul. If I understand correctly the new BinaryOp returned from
visitMul should replace the original Instruction in the Worklist.
However, I end up in an infinite loop and the Instruction
2013 Jun 17
1
Cisco SSCP to SIP
Hi all,
I'm trying to convers some Cisco SSCP phones to the SIP formware. The phone boots, I see it tries to fetch a bunch of files on my TFTP:
Jun 17 09:37:45 firewall dnsmasq-dhcp[21202]: DHCPACK(eth2) 192.168.10.103 6c:50:4d:da:f0:67 SEP6C504DDAF067
Jun 17 09:38:10 firewall in.tftpd[22666]: RRQ from 192.168.10.103 filename CTLSEP6C504DDAF067.tlv
Jun 17 09:38:10 firewall in.tftpd[22666]:
2011 Mar 06
1
[LLVMdev] First Patch
Hi all!
I've been tinkering with LLVM's code-base for a few days, hoping to
start on one of the ideas mentioned in the "Open Projects" page (I was
told 'Improving the current system'/'Miscellaneous Improvements'/5 would
be a good start).
While I was at it, I also took a stab at finishing up one of the TODOs.
I've attached the patch for review.
--
2011 Mar 02
3
[LLVMdev] live variable analysis
Hi
As I understand live variable analysis will set the def/kill
properties of operands. In that case, is it still needed to set the
kill flags when possible during lowering?
thanks
dz
2017 Sep 13
3
How to add optimizations to InstCombine correctly?
There is in fact a transform out there somewhere that reverses yours.
define i64 @foo(i64 %a) {
%b = shl i64 %a, 5
%c = add i64 %b, %a
ret i64 %c
}
becomes
define i64 @foo(i64 %a) {
%c = mul i64 %a, 33
ret i64 %c
}
~Craig
On Wed, Sep 13, 2017 at 10:11 AM, Craig Topper <craig.topper at gmail.com>
wrote:
> Your code seems fine. InstCombine can infinite loop if some other
2017 Sep 14
3
How to add optimizations to InstCombine correctly?
Hi Craig,
thanks for digging into this. So InstCombine is the wrong place for
fixing PR34474. Can you give me a hint where such an optimization should
go into CodeGen? I am not really familiar with stuff that happens after
the MidLevel.
Cheers,
Michael
Am 13.09.2017 um 19:21 schrieb Craig Topper:
> And that is less instructions. So from InstCombine's perspective the
> multiply is
2011 Aug 26
2
[LLVMdev] Dead node removal in DAGCombiner
Is this piece of code in DAGCombiner::visitLOAD removing a dead node?
06155 if (N->use_empty()) {
06156 removeFromWorkList(N);
06157 DAG.DeleteNode(N);
06158 }
If it is, is there a reason it doesn't push its operands to the work
list as done in line 974-975?
00970 // If N has no uses, it is dead. Make sure to revisit all
N's operands once
2013 Apr 23
2
[LLVMdev] Optimize away sqrt in simple cases?
Hello,
Am Dienstag, 23. April 2013, 13:26:19 schrieb Owen Anderson:
> That's a pretty seriously unsafe floating point optimization. It could be
> done in fast-math mode, but I doubt we currently do it.
I just saw this thread and wonder why it's "seriously" unsafe? I see only one
problematic corner case.
For x >= 0.0 the result cannot lose precision.
For x = NaN the
2012 Nov 18
1
i want to put the results of the list in a for loop
Dear R users,
i want to put the results of a list to a for loop.
i will give an example
m1<-matrix(rep(1,15),ncol=5)
ind.sgn <- lapply(1:ncol(m1), combn, x = ncol(m1))
ind.sgn
[[1]]
[,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[[2]]
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 1 1 1 1 2 2 2 3 3 4
[2,] 2 3 4 5
2013 Apr 23
0
[LLVMdev] Optimize away sqrt in simple cases?
On Apr 23, 2013, at 3:33 PM, Christoph Grenz <christophg+llvm at grenz-bonn.de> wrote:
> Hello,
>
> Am Dienstag, 23. April 2013, 13:26:19 schrieb Owen Anderson:
>> That's a pretty seriously unsafe floating point optimization. It could be
>> done in fast-math mode, but I doubt we currently do it.
>
> I just saw this thread and wonder why it's