Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] [RFC] Defining Infinite Loops"
2015 Jul 16
2
[LLVMdev] [RFC] Defining Infinite Loops
----- Original Message -----
> From: "Chandler Carruth" <chandlerc at google.com>
> To: "Hal Finkel" <hfinkel at anl.gov>, "LLVM Dev" <llvmdev at cs.uiuc.edu>
> Sent: Thursday, July 16, 2015 1:00:05 AM
> Subject: Re: [LLVMdev] [RFC] Defining Infinite Loops
>
>
> FWIW, I'm very much in favor of having a firm and clear answer
2015 Jul 16
2
[LLVMdev] [RFC] Defining Infinite Loops
----- Original Message -----
> From: "Chandler Carruth" <chandlerc at google.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "LLVM Dev" <llvmdev at cs.uiuc.edu>
> Sent: Thursday, July 16, 2015 2:33:21 AM
> Subject: Re: [LLVMdev] [RFC] Defining Infinite Loops
>
>
>
>
> On Thu, Jul 16, 2015 at 12:27 AM Hal Finkel
2015 Jun 28
5
[LLVMdev] readonly and infinite loops
> You dropped some context...
> A daemon program wouldn't be readonly. An infinite loop can be.
Right.
To prevent miscommunication, here is a quick analysis of a problematic
(IMO) example:
We start with
```
define void @infloop(i1 %c) {
entry:
br i1 %c, label %l, label %e
l:
br label %l
e:
ret void
}
define void @main_func() {
entry:
call void @infloop(i1 1)
ret
2015 Jun 27
4
[LLVMdev] readonly and infinite loops
On Sat, Jun 27, 2015 at 2:16 PM, Nuno Lopes <nunoplopes at sapo.pt> wrote:
> At least in C/C++ that's UB, yes.
So you cannot map every turing machine to a valid C/C++ program then. :)
Also, does this mean that "daemon" programs that run continuously till
they're killed by the OS (using a mechanism that is not visible in C)
are effectively undefined?
-- Sanjoy
>
2015 Jun 27
2
[LLVMdev] readonly and infinite loops
Running -early-cse on
declare void @rn() readnone nounwind
define void @f() {
entry:
call void @rn()
ret void
}
removes the call to @rn(). But @rn() could have had an infinite loop
in it in which case @f() went from being a non-terminating
program to an terminating no-op. Is this intentional?
The only way I can see this transform being legal is if infinite loops
are declared to have
2010 Nov 26
0
[LLVMdev] how to eliminate dead infinite loops?
On 11/25/2010 12:59 PM, Andrew Clinton wrote:
> On 11/24/2010 06:55 PM, Owen Anderson wrote:
>> On Nov 23, 2010, at 9:22 AM, Andrew Clinton wrote:
>>
>>
>>> Most of my programs contain loops that the LoopDeletion pass is unable
>>> to remove. It appears that the following code in LoopDeletion.cpp:152
>>> is the culprit:
>>>
>>>
2010 Nov 25
3
[LLVMdev] how to eliminate dead infinite loops?
On 11/24/2010 06:55 PM, Owen Anderson wrote:
> On Nov 23, 2010, at 9:22 AM, Andrew Clinton wrote:
>
>
>> Most of my programs contain loops that the LoopDeletion pass is unable
>> to remove. It appears that the following code in LoopDeletion.cpp:152
>> is the culprit:
>>
>> ScalarEvolution& SE = getAnalysis<ScalarEvolution>();
>>
2010 Nov 26
1
[LLVMdev] how to eliminate dead infinite loops?
Andrew Clinton wrote:
> On 11/25/2010 12:59 PM, Andrew Clinton wrote:
>> On 11/24/2010 06:55 PM, Owen Anderson wrote:
>>> On Nov 23, 2010, at 9:22 AM, Andrew Clinton wrote:
>>>
>>>
>>>> Most of my programs contain loops that the LoopDeletion pass is unable
>>>> to remove. It appears that the following code in LoopDeletion.cpp:152
2013 Jul 22
6
[LLVMdev] Does nounwind have semantics?
Does 'nounwind' have semantics that inform optimization passes? It seems to in some cases, but not consistently. For example...
int32_t foo(int32_t* ptr) {
int i = 0;
int result;
do {
bar(ptr);
result = *ptr;
bar(ptr);
} while (i++ < *ptr);
return result;
}
Say we have a front end that declares bar as...
declare void @bar(i32*) readonly;
So 'bar' is
2004 Jul 06
5
Converting S-Plus Libraries to R
Dear all!
I'd like to do multiple imputation of missing values with s-plus libraries
that are provided by Shafer (http://www.stat.psu.edu/~jls/misoftwa.html). I
wonder, whether these libraries are compatible or somehow convertible to R
(because I don't have S-plus), so that I can use this functions using the R
Program.
I would be happy if you could tell me,
-if it is possible to use
2008 Dec 17
1
Asterisk 1.4 to AS5400 using H.323 (ooh323) inbound working but outbound doesn't
I have the following setup: DS3 -> Cisco AS5400 -> H.323 (ooh323) ->
Asterisk
Inbound calls work great but outbound calls fail. So to check and
make sure we have outbound calling ability on the DS3 we setup a Cisco
Call Manager Express and it can make outbound calls both local and
long distance with no problems.
The failure code is Cause i = 0x8381 - Unallocated/unassigned number.
We
2014 Apr 25
2
[LLVMdev] [llvm] r206732 - Implement builtins for safe division: safe.sdiv.iN, safe.udiv.iN, safe.srem.iN,
On 04/25/2014 10:12 AM, Eric Christopher wrote:
> Hi Andrew,
>
> Replying in both places because this mail is a pretty good summary of
> issues and so it's worth replying to... my apologies for continuing in
> both places.
Responding to LLVMDev - I for one had missed this part of the thread.
>
>> The only language aspect under discussion is integer division. Every
2015 Jun 28
2
[LLVMdev] readonly and infinite loops
----- Original Message -----
> From: "Nuno Lopes" <nunoplopes at sapo.pt>
> To: "Sanjoy Das" <sanjoy at playingwithpointers.com>, "Jeremy Lakeman" <Jeremy.Lakeman at gmail.com>, nlewycky at google.com
> Cc: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>
> Sent: Sunday, June 28, 2015 6:08:52 AM
> Subject: Re:
2013 Jul 22
2
[LLVMdev] Does nounwind have semantics?
I'm not sure I understand why it's blocked on that, by the way.
Even if we can't apply the attribute ourselves, I don't see why we wouldn't expose that ability to frontends.
I'm not entirely sure "halting" is the right attribute either, by the way.
What I, personally, would like to see is a way to specify a function call is safe to speculatively execute. That
2003 Apr 01
1
Shafer's MI software for S-plus
Greetings folks,
Shafer's S-plus package "norm" for multiple imputation of
missing values in multivariate normal data has been most
kindly and usefully ported to R by Alvaro A. Novo.
Shafer's website
http://www.stat.psu.edu/~jls/
lists four S-plus packages in all:
NORM - multiple imputation of multivariate continuous data
CAT - multiple imputation of multivariate
2015 Jun 30
3
[LLVMdev] readonly and infinite loops
----- Original Message -----
> From: "Nuno Lopes" <nunoplopes at sapo.pt>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>, "Sanjoy Das" <sanjoy at playingwithpointers.com>, "Jeremy
> Lakeman" <Jeremy.Lakeman at gmail.com>, nlewycky at google.com
>
2013 Jul 22
0
[LLVMdev] Does nounwind have semantics?
Andrew Trick wrote:
> Does 'nounwind' have semantics that inform optimization passes? It seems to in some cases, but not consistently. For example...
>
> int32_t foo(int32_t* ptr) {
> int i = 0;
> int result;
> do {
> bar(ptr);
> result = *ptr;
> bar(ptr);
> } while (i++< *ptr);
> return result;
> }
>
> Say we have
2015 Aug 15
3
[PATCH] EFI booting may hang indefinitely when no keyboard is present
EFI booting may hang indefinitely when no keyboard is present on a
machine (or when UEFI has chosen to not init USB due to fast boot).
Reproducible at least with "EFI v2.31 by American Megatrends" on an
Asrock H81M-ITX board.
Reason is the input draining loop near the end in efi/main.c; it calls
ReadKeyStroke() as long as EFI_NOT_READY is not returned. On machines
without keyboard,
2013 Jul 22
2
[LLVMdev] Does nounwind have semantics?
Of course frontends are free to put attributes, but it would be nice if optimizations actually used them. ;-)
My use case is that of proprietary frontend that happens to know some library function calls - which are only resolved at link time - have no side effects and are safe to execute speculatively, and wants to tell the optimizer it can move them around however it likes. I'll gladly submit
2013 Jul 22
0
[LLVMdev] Does nounwind have semantics?
Kuperstein, Michael M wrote:
> I'm not sure I understand why it's blocked on that, by the way.
It blocks our ability to automatically deduce the halting attribute in
the optimizer, which was necessary for the use case I had at the time.
If you have a use case of your own, feel free to propose the patch!
(Technically it's not *blocked* -- see how my patch does it! -- but the