Displaying 15 results from an estimated 15 matches for "valists".
Did you mean:
va_lists
2006 Oct 02
0
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
On Sun, 1 Oct 2006, Bram Adams wrote:
> One of the obstacles I face when trying to do the complement
> (creating new Function and adding call to original in it), is to find
> out how to pass the varargs argument of the new Function into the
> call to the old Function. Will passing the sbyte** passed to
> llvm.va_start do the trick?
I think this is the better way to go. If
2006 Oct 01
2
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
Hi,
I need to find a way to extract all BasicBlocks of a Function (no
clones!) into a new Function that has the exact same signature, and
adding a call to the new Function in the old one. I tried out lib/
Transforms/Utils/CodeExtractor::ExtractCodeRegion(...), but this one
unfortunately checks first to see whether there are any allocas and/
or va_starts and returns a null pointer in that
2006 Oct 02
3
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
Hi,
Op 2-okt-06, om 21:35 heeft Chris Lattner het volgende geschreven:
> I think the easiest way to do this is to do the 'complement' as you
> describe, but specially handle the varargs case. Basically you
> need to
> call va_start in the original function, and pass the valist pointer
> down.
> This shouldn't be too hard.
OK.
I've been rethinking my use
2006 Oct 03
0
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
On Mon, 2 Oct 2006, Bram Adams wrote:
> So, I wonder what problems may show up in this algorithm (steps 4, 5
> and 6 seem to be crucial). The vararg-case could be a problem in step
> 5, although the va_start intrinsic isn't tied to the surrounding
> Function at first sight.
There is an implicit dependency between vastart and the function it
lives in. Specifically, if you have:
2006 Oct 05
0
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
On Thu, 5 Oct 2006, Bram Adams wrote:
> Apparently, the problem is how to "rewind" the vararg-argument back to
> its first element when the second loop is reached, as it seems that the
> code just continues at position count and beyond, resulting in overflow.
>
> I'm not sure whether this code snippet is valid ANSI C, and if it is,
> one probably shouldn't use
2006 Oct 05
1
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
Hi,
Op 5-okt-06, om 16:05 heeft Ryan Brown het volgende geschreven:
> I don't know if that's valid but what about something like this:
> int va_double_sum(int count,...){
> /*declare va_list for each original va_start*/
> /*llvm.va_start for each va_list*/
> /*call extracted_sum(count,va_list1, va_list2, ...)*/
> }
That should work, I think, ...
Op 5-okt-06, om
2006 Oct 03
2
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
Hi,
Op 3-okt-06, om 20:48 heeft Chris Lattner het volgende geschreven:
> You'd have to change it to something like:
>
> void foo(int X, ...) {
> P = va_start();
> bar(X, P);
> }
>
> void bar(int X, valist P) {
> use(P);
> }
Can the other va_...-intrinsics be used in bar as were the "P =
va_start" in bar? The va_start probably is unnecessary
2005 Jan 03
0
[LLVMdev] [patch] native AMD64 support
Markus F.X.J. Oberhumer wrote:
> Hello folks,
>
> with the small patch attached below the whole llvm toolchain (llvm & llvm-gcc)
> will compile and run under AMD64 Linux in native 64-bit LP64 mode.
>
> This means that compilation, bytecode management and CWriter output all work
> as expected. Of course there is no JIT, and the bytecode interpreter is still
> very
2006 Oct 05
3
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
Hi,
Chris Lattner wrote:
> All the non-vastart calls can be anywhere. va_end in particular codegens
> to a noop on all targets llvm currently supports, fwiw.
>
Things go well, except for the following (pathological?) C program:
int va_double_sum(int count,...){
int i,sum=0;
va_list ap;
va_start(ap,count);
for(i=0;i<count;i++){
sum+=va_arg(ap,int);
}
va_end(ap);
2010 Mar 09
0
[LLVMdev] Fwd: help with llvm-convert
On alpha, I am seeing a problem with Emiting va_copy. valists are
structs and allocated by alloca, unlike x86. EmitBuiltinVACopy is
therefore using the second branch of the if (~llvm-convert.cpp:6538)
to emit the second argument. The second argument is the result of an
alloca. TreeToLLVM::Emit is hitting the first assertion (~929).
The exp being passed is...
2006 Oct 03
0
[LLVMdev] Extracting all BasicBlocks of a Function into new Function
On Tue, 3 Oct 2006, Bram Adams wrote:
>> You'd have to change it to something like:
>> void foo(int X, ...) {
>> P = va_start();
>> bar(X, P);
>> }
>>
>> void bar(int X, valist P) {
>> use(P);
>> }
>
> Can the other va_...-intrinsics be used in bar as were the "P =
> va_start" in bar? The va_start probably is
2007 Sep 04
0
5 commits - doc/Makefile.am doc/swfdec-sections.txt libswfdec/swfdec_as_array.c libswfdec/swfdec_as_boolean.c libswfdec/swfdec_asbroadcaster.c libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_native_function.h
doc/Makefile.am | 1
doc/swfdec-sections.txt | 3
libswfdec/swfdec_as_array.c | 1
libswfdec/swfdec_as_boolean.c | 2
libswfdec/swfdec_as_internal.h | 4
libswfdec/swfdec_as_native_function.c | 156 ++++++++++++++++++++++++++++++++++
libswfdec/swfdec_as_native_function.h | 21 ++++
libswfdec/swfdec_as_number.c
2009 May 21
0
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On Wed, May 20, 2009 at 4:55 PM, Dan Gohman <gohman at apple.com> wrote:
> Can you explain why you chose the approach of using a new pass?
> I pictured removing LegalizeDAG's type legalization code would
> mostly consist of finding all the places that use TLI.getTypeAction
> and just deleting code for handling its Expand and Promote. Are you
> anticipating something more
2009 May 20
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On May 20, 2009, at 1:34 PM, Eli Friedman wrote:
> On Wed, May 20, 2009 at 1:19 PM, Eli Friedman
> <eli.friedman at gmail.com> wrote:
>
>> Per subject, this patch adding an additional pass to handle vector
>>
>> operations; the idea is that this allows removing the code from
>>
>> LegalizeDAG that handles illegal types, which should be a significant
2009 May 21
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On Wed, May 20, 2009 at 5:26 PM, Eli Friedman <eli.friedman at gmail.com> wrote:
> On Wed, May 20, 2009 at 4:55 PM, Dan Gohman <gohman at apple.com> wrote:
>> Can you explain why you chose the approach of using a new pass?
>> I pictured removing LegalizeDAG's type legalization code would
>> mostly consist of finding all the places that use TLI.getTypeAction