Displaying 20 results from an estimated 80000 matches similar to: "[LLVMdev] readnone"
2011 Sep 10
2
[LLVMdev] readnone
If a function accesses a global constant array of constants--in my case
a constant array of function pointers, and does NOT reference this
array via a function argument (it instead directly references this global),
is this enough to disallow the application of the readnone attribute to the
function in question?
Thanks in advance
Garrison
2011 Sep 10
0
[LLVMdev] readnone
Garrison Venn wrote:
> If a function accesses a global constant array of constants--in my case
> a constant array of function pointers, and does NOT reference this
> array via a function argument (it instead directly references this global),
> is this enough to disallow the application of the readnone attribute to the
> function in question?
A function is readnone if it doesn't
2011 Sep 10
0
[LLVMdev] readnone
Thanks for the answer Nick. Now you got me on a chase through FunctionAttrs.cpp
trying to find out what analysis passes "... which answers no to everything", means. :-)
Garrison
On Sep 10, 2011, at 13:52, Nick Lewycky wrote:
> Nick Lewycky wrote:
>> I was sure that I remember "opt -functionattrs" being taught to do this,
>> but I just tried it out and it
2010 Jan 11
0
[LLVMdev] Operations on constant array value?
Sorry to keep this thread alive, but I'm learning so ...
There is more. The doc for GlobalValue::LinkageTypes or the C API LLVMLinkage is not as clear as the
lang ref manual. See: http://llvm.org/docs/LangRef.html#linkage. I'm pointing this out because something
like LinkerPrivateLinkage (LLVMLinkerPrivateLinkage), or another one, might be more appropriate to
your throw away use case (if
2010 Jan 11
2
[LLVMdev] Operations on constant array value?
2010/1/11 Garrison Venn <gvenn.cfe.dev at gmail.com>
> I have not tried this, but a linkage type of PrivateLinkage would not add
> to the symbol table according
> to the doc.
>
> LLVMSetLinkage(g, LLVMPrivateLinkage);
>
Thanks - I hadn't thought of that.
>
> Garrison
>
> On Jan 11, 2010, at 14:03, James Williams wrote:
>
> 2010/1/11 Eli Friedman
2011 Sep 10
2
[LLVMdev] readnone
Nick Lewycky wrote:
> I was sure that I remember "opt -functionattrs" being taught to do this,
> but I just tried it out and it doesn't. This is a missed optz'n
> opportunity, testcase:
>
> @x = constant i32 0
> define void @foo() {
> load i32* @x
> ret void
> }
>
> is only marked readonly when it should be readnone. Could
2010 Jan 25
2
[LLVMdev] Exception handling question
I think so. It also fails the same way on LLVM trunk from last week.
The full backtrace is below. It appears that frame #3 is a compilation
of __l_personality() and frame #14 is a compilation of f(). The
compilation of __l_personality appears to have been triggered by the
need to output DWARF information for f().
-- James
#0 0x00007ffff6ed84b5 in *__GI_raise (sig=<value optimised out>) at
2011 Jul 23
0
[LLVMdev] RFC: Exception Handling Rewrite
Hi Eli
So I found this in Attributes.h:
const Attributes UWTable = 1<<30; ///< Function must be in a unwind
///table
What does this mean? In particular what does it mean not to add this as
a function attribute to a function? I'm obviously going down the wrong road in
my interpretation, as I
2010 Jan 22
3
[LLVMdev] Exception handling question
I've worked around this issue in my test case by simply calling my
personality function on program to ensure it's JIT'ed before any unwind
happens.
-- James
2010/1/22 Garrison Venn <gvenn.cfe.dev at gmail.com>
> No, there is no magic. :-)
>
> To me though, the tools are magic, because I have no clue what they are
> doing without looking at them and using them.
>
2010 Jan 22
0
[LLVMdev] Exception handling question
Interesting. Was this the reason you were getting the recursive compilation error in JIT::runJITOnFunctionUnlocked(...) (isAlreadyCodeGenerating)?
Do you have the time to try your test with 2.7?
Garrison
On Jan 22, 2010, at 17:37, James Williams wrote:
> I've worked around this issue in my test case by simply calling my personality function on program to ensure it's JIT'ed
2010 Jan 10
3
[LLVMdev] Using a function from another module
On Sun, Jan 10, 2010 at 12:38 PM, Garrison Venn <gvenn.cfe.dev at gmail.com> wrote:
> Won't passing llvm::Function* around vs strings (function names), also work, at code generation time,
> without the need for a module A dec to module B impl. mapping?
>
> Garrison
Nope. You cannot place a call instruction into one module whose
callee is a Function from another module. You
2011 Jul 23
4
[LLVMdev] RFC: Exception Handling Rewrite
On Sat, Jul 23, 2011 at 2:36 AM, Garrison Venn <gvenn.cfe.dev at gmail.com> wrote:
> Hi Bill,
>
> Thanks for working on this.
>
> Is there a reference for the function attribute uwtable, or is it to be defined as
> part of this effort?
It already exists; there's some limited documentation in the LLVM
source, but Rafael apparently forgot to add it to LangRef...
-Eli
2010 Feb 03
0
[LLVMdev] Exception handling question
Hi James,
Just wanted to update you. As you implied the problem here is that
the personality function has to be jitted before the code that contains
the corresponding llvm.eh.selector intrinsic instruction is jitted. I verified
this by creating a generated version of the personality function which unless
I jitted first, gave me the same error when running the code. Since you are using
tools
2010 Feb 27
2
[LLVMdev] another experimental patch for bug 2606
No problem I'll drop this from our discussion as it really is only germane to my
learning path and imagination. :-) I do at this time still have this concern of
allowing a user (developer) the right to turn this "cross module linkage" off, but
I'm still in the process of understanding your previous comments on this.
Thanks again for the help and time by the way.
Garrison
PS:
2011 Sep 06
1
[LLVMdev] sunkaddr var names
When viewing generated IR code in a module I generated, I'm seeing %sunkaddr??
IR variables, being created that I did not generate. What is the point of these var names,
and implementations of their use such as:
%sunkaddr16 = sext i32 %25 to i64
%sunkaddr15 = ptrtoint i8* %addr to i64
%sunkaddr17 = mul i64 %sunkaddr16, 4
%sunkaddr18 = add i64 %sunkaddr15, %sunkaddr17
%sunkaddr19
2010 Feb 26
0
[LLVMdev] 2nd attempt for a working patch for bug 2606
Hi Jeffrey,
On Feb 26, 2010, at 16:02, Jeffrey Yasskin wrote:
> [sidenote: Please try to avoid extraneous whitespace and line wrapping changes in your patches. It makes it harder to see what you're actually changing]
Sorry just saw some preexisting code was not in 80 columns.
>
> On Fri, Feb 26, 2010 at 4:57 AM, Garrison Venn <gvenn.cfe.dev at gmail.com> wrote:
> Hi
2010 Jan 22
0
[LLVMdev] Exception handling question
No, there is no magic. :-)
To me though, the tools are magic, because I have no clue what they are doing without looking at them and using them.
As their function is not germane to my current endeavors, I hope to learn about them from this list, and most likely from
your postings. I know it is a common approach, but to me I think bitcode generation to JIT runtime is a a cool feature of
LLVM.
2010 Jan 09
2
[LLVMdev] Exception Implementation Example added to Wiki
If the powers at be want this, I could easily transform the source to the LLVM coding standards, and add
the necessary portable UNIX support--someone else would have to add non-UNIX support although the
System library probably helps with this. However I'm guessing the LLVM release flux of the exception system,
along with a lack of universal platform, dwarf JIT support might be a hinderance in
2010 Feb 26
1
[LLVMdev] 2nd attempt for a working patch for bug 2606
[sidenote: Please try to avoid extraneous whitespace and line wrapping
changes in your patches. It makes it harder to see what you're actually
changing]
On Fri, Feb 26, 2010 at 4:57 AM, Garrison Venn <gvenn.cfe.dev at gmail.com>wrote:
> Hi Olivier,
>
> On Feb 25, 2010, at 14:10, Olivier Meurant wrote:
>
> Hi Garrison,
>
> I finally come back from holidays and take
2009 Dec 08
0
[LLVMdev] getAnalysisIfAvailable<>(...)
Hi!
If a pass is required then it makes sense to
getAnalysis<DwarfWriter>(). getAnalysisIfAvailable<>() is used for
cases where a pass want to take advantage of (or fix up) info only
*if* it is available.
If you prepare a patch to fix getAnalysisifAvailable<>() uses (e.g.
DwarfWriter requests you mention below) then I'll apply it.
-
Devang
On Tue, Dec 8, 2009 at 11:11