Displaying 5 results from an estimated 5 matches for "uncomputable".
Did you mean:
computable
2008 Jul 17
0
[LLVMdev] SSA or not SSA?
...In short, "Single Assignment" means "Single '='", not "Single
> 'store'".
Sure, because store is not an assignment.
It would be impossible to correctly rename memory for all programs,
since may-alias is undecidable at compile time and must-alias is
uncomputable at compile time.
The best you can do are conservative approximations, which would mean
sometimes your ssa form would be wrong.
2016 Oct 13
2
Loop Unrolling Fail in Simple Vectorized loop
...sn't an infinite loop (consider the case of vectorizable_elements==SIZE_MAX),
> therefore it can't compute the trip count. Therefore, we don't unroll.
>
> There's a few different angles you could use to attack this: you could
> teach the unroller to unroll loops with an uncomputable trip count, or you
> can make the trip count of your loop computable somehow. Changing the
> unroller is probably straightforward (see the recently committed r284044).
> Making the trip count computable is more complicated... it's probably
> possible to teach SCEV to reason about t...
2008 Jul 17
2
[LLVMdev] SSA or not SSA?
Patrick Meredith <pmeredit at uiuc.edu> writes:
> Memory is what the i32* points too. The i32* itself is in a
> register. You can store to it as many times as you want, but you
> can't change the address, because that would violate SSA.
Thanks,
For the record, I finally understood by making a few experiments:
This is (obviously) valid:
define i32 @main() {
2016 Oct 12
2
Loop Unrolling Fail in Simple Vectorized loop
Hi all,
Attached herewith is a simple vectorized function with loops performing a
simple shuffle.
I want all loops (inner and outer) to be unrolled by 2 and as such used
-unroll-count=2
The inner loops(with k as the induction variable and having constant trip
counts) unroll fully, but the outer loop with (j) fails to unroll.
The llvm code is also attached with inner loops fully unrolled.
To
2016 Oct 13
2
Loop Unrolling Fail in Simple Vectorized loop
...der the case of vectorizable_elements==SIZE_MAX),
>>> therefore it can't compute the trip count. Therefore, we don't unroll.
>>>
>>> There's a few different angles you could use to attack this: you could
>>> teach the unroller to unroll loops with an uncomputable trip count, or you
>>> can make the trip count of your loop computable somehow. Changing the
>>> unroller is probably straightforward (see the recently committed r284044).
>>> Making the trip count computable is more complicated... it's probably
>>> possible...