search for: mangler

Displaying 20 results from an estimated 132 matches for "mangler".

Did you mean: mangled
2012 Jul 31
1
[LLVMdev] How to create a mangler instance from target machine?
Dear LLVM, Might be a easy question for someone, but not for me now. Consider there is a TargetMachine instance. Having this target, how could you get a corresponding Mangler class instance? Mangler depends on MCContext, which is connected with LLVMTargetMachine inherited from TargetMachine. However, LLVMTargetMachine is only available for targets machines implementations, and not available externally. How to solve this? Thanks, - Dima. -------------- next part -----...
2008 Nov 23
2
[LLVMdev] RFC: Mangling Unnamed Global Values
Hi all, Right now the Mangler::getValueName() method will produce something like "__unnamed_1_37" for a global value that doesn't have a name. This is wrong for Objective-C where CFStrings will get these labels, thus preventing the linker from coalescing them. [/tmp]> nm -s __DATA __cfstring -m foo.o 000...
2013 May 09
3
[LLVMdev] C++ Name mangling
Hi, I'm trying to find a solution to the following problem: I need to generate a mangled name for given C++ function. Could I use llvm Mangler class for it? Regards, Blackbox dev team -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130509/0ed811f7/attachment.html>
2013 Aug 22
0
[LLVMdev] Mangler does not check for duplicate symbols?
The current implementation of llvm::Mangler does not check if a symbol name exists before mangling. This can cause problems if the mangled name aliases another symbol in the IR. For example, consider the following: @"a(b" = addrspace(1) global float 1.0 @"a_28_b" = addrspace(1) global float 1.0 If I run this through...
2011 Nov 07
9
No sound in World of Warcraft - intermittant.
At first I thought it was due to running Mangler simultaneously, but recently we've had no sound in World of Warcraft. One night when I was setting up to raid that night, I started WoW, and sound worked fine. I then quit WoW, started Mangler, started WoW, had sound in the first but not the second. When WoW started this dialogue box popped up...
2008 Nov 24
2
[LLVMdev] RFC: Mangling Unnamed Global Values
The symbols I'm interested in already have internal linkage (as you would expect). But because the mangler is in charge of assigning them names, they never seem to be decorated with the 'L' in front. . . . -bw On Mon, Nov 24, 2008 at 10:48 AM, Dan Gohman <gohman at apple.com> wrote: > Can symbols with external linkage but no name be converted > to have internal linkage? Would that...
2008 Nov 24
0
[LLVMdev] RFC: Mangling Unnamed Global Values
Can symbols with external linkage but no name be converted to have internal linkage? Would that solve the problem? Dan On Nov 23, 2008, at 2:15 AM, Bill Wendling wrote: > Hi all, > > Right now the Mangler::getValueName() method will produce something > like "__unnamed_1_37" for a global value that doesn't have a name. > This is wrong for Objective-C where CFStrings will get these labels, > thus preventing the linker from coalescing them. > > [/tmp]> nm -s __DATA __cfs...
2012 Apr 02
0
[LLVMdev] [PATCH] Output UTF-8-encoded characters as identifier characters into assembly by default.
...ble in the MCAsmInfo. I've decided to turn it on by default in (possibly optimistic) hopes that most assemblers are reasonably sane. If this proves a problem, switching to default seems reasonable. --- include/llvm/MC/MCAsmInfo.h | 7 +++++++ lib/MC/MCAsmInfo.cpp | 1 + lib/Target/Mangler.cpp | 11 +++++++---- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/include/llvm/MC/MCAsmInfo.h b/include/llvm/MC/MCAsmInfo.h index 095ca14..0f67c99 100644 --- a/include/llvm/MC/MCAsmInfo.h +++ b/include/llvm/MC/MCAsmInfo.h @@ -143,6 +143,10 @@ namespace llvm { /// sym...
2017 Jul 27
2
llvm 5.0 release rc1 : ExecutionEngine fatal error on MCJIT::getFunctionAddress
...everyone, In llvm 4.0 the MCJIT::getFunctionAddress function return 0 (a null address) when the symbol is not found : *uint64_t MCJIT::getSymbolAddress(const std::string &Name, bool CheckFunctionsOnly) { std::string MangledName; { raw_string_ostream MangledNameStream(MangledName); Mangler::getNameWithPrefix(MangledNameStream, Name, getDataLayout()); } return findSymbol(MangledName, CheckFunctionsOnly).getAddress();}* Now with the current implementation (llvm 5.0 rc1 tag) : *uint64_t MCJIT::getSymbolAddress(const std::string &Name, bool CheckFunctionsOnly) {...
2011 May 06
0
[LLVMdev] Question about linking llvm-mc when porting a new backend
...eGen.a(TargetLoweringObjectFileImpl.cpp.o) "llvm::GuaranteedTailCallOpt", referenced from: __ZN4llvm21GuaranteedTailCallOptE$non_lazy_ptr in libLLVMCodeGen.a(Analysis.cpp.o) "llvm::TargetLoweringObjectFile::SectionForGlobal(llvm::GlobalValue const*, llvm::SectionKind, llvm::Mangler*, llvm::TargetMachine const&) const", referenced from: llvm::AsmPrinter::EmitGlobalVariable(llvm::GlobalVariable const*)in libLLVMAsmPrinter.a(AsmPrinter.cpp.o) llvm::AsmPrinter::EmitGlobalVariable(llvm::GlobalVariable const*)in libLLVMAsmPrinter.a(AsmPrinter.cpp.o) llvm:...
2013 Feb 20
4
[LLVMdev] x86_stdcallcc @<n> mangling vs. '\1' prefix [was: x86_stdcallcc and extra name mangling on Windows]
I don't remember anything other that what I've written in the bug João has mentioned. Probably something like this patch http://llvm.org/bugs/show_bug.cgi?id=14410#c6 ? 2013/2/20 João Matos <ripzonetriton at gmail.com>: > I think so. There have been other reports lately related to this being > wrong. > > http://llvm.org/bugs/show_bug.cgi?id=14410 > > CC'ing
2013 May 09
0
[LLVMdev] C++ Name mangling
No, the LLVM Mangler class really only does low-level manglings like '_' prefixing, stdcall mangling on Windows, and escaping funny symbols. The Clang mangler, however, does what you want. But, you'll need to feed it a clang AST in order to get a name out. Depending on the parameters of your function, th...
2009 Sep 17
1
[LLVMdev] Patch for PR4776
...ister r15. LLVM had been generating this ill-formed code instead: mov.b &_30_x0021, r15 # note ASCII '0' has character code 0x30 Chris suggested that I add a bool for "symbols can start with digit" to MCAsmInfo and set it to true in the MSP430 backend, then make the mangler and MCSymbol printer respect that bool -- so that's what I did. Chris blessed the patch in the Bugzilla thread, but I wanted to solicit comments here because it's my first. (Is my approach reasonable? Would a more conservative strategy, e.g., just allowing symbols to start with "0x&...
2016 Jul 28
2
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...ddr; + } + } + return 0; + } + +private: diff --git a/LogicalDylib.h b/LogicalDylib.h index 84e3bf5..2e35cfd 100644 --- a/LogicalDylib.h +++ b/LogicalDylib.h @@ -17,6 +17,8 @@ #include "JITSymbol.h" #include <string> #include <vector> +#include "llvm/IR/Mangler.h" +#include "llvm/Support/raw_ostream.h" namespace llvm { namespace orc { @@ -77,6 +79,24 @@ public: return LMH->Resources; } + static std::string mangle(StringRef Name, const DataLayout &DL) { + std::string MangledName; + { + raw_string_ostream Mangle...
2003 Oct 25
3
[LLVMdev] version 1.0, compiling under cygwin
...nimumEPS_' which is not being output /cygdrive/w/tmp/llvm/llvm/lib/Support/Debug/LeakDetector.o(.stab+0x287f8):/usr/include/c++/3.3.1/bits/stl_set.h:100: reloc refers to symbol `.text$_ZSt4swapISt14_Rb_tree_colorEvRT_S2_' which is not being output /cygdrive/w/tmp/llvm/llvm/lib/Support/Debug/Mangler.o(.stab+0x2b8f4): In function `GLOBAL__D__ZN7Mangler14makeNameProperERKSs': /usr/include/c++/3.3.1/bits/stl_set.h:100: reloc refers to symbol `.text$_ZNKSt3setIPK5ValueSt4lessIS2_ESaIS2_EE5countERKS2_' which is not being output /cygdrive/w/tmp/llvm/llvm/lib/Support/Debug/Mangler.o(.stab+0x2...
2010 Apr 22
0
[LLVMdev] 2.7 release notes
...gt;</li> + <li><tt>llvm/Support/DataTypes.h</tt> to <tt>llvm/System/DataTypes.h</tt></li> + <li><tt>llvm/Transforms/Utils/InlineCost.h</tt> to <tt>llvm/Analysis/InlineCost.h</tt></li> + <li><tt>llvm/Support/Mangler.h</tt> to <tt>llvm/Target/Mangler.h</tt></li> + <li><tt>llvm/Analysis/Passes.h</tt> to <tt>llvm/CodeGen/Passes.h</tt></li> +</ul></li> </ul> </div> There were others, which are not documented, but I'm not...
2017 Jun 19
3
VC C++ demangler
...an up to date definition of the name-decoration grammar, especially in light of the integration of CodeView debugging information into LLVM, which somewhat ties in with this. This was expressed as a regular BNF grammar, so it should be possible to create a clean-room implementation of both the “mangler” and “de-mangler” from that BNF definition if it still exists in that form. Does the recently added CodeView debug information not provide this description (I admit I haven’t looked)? Certainly tools like ‘c++filt’ do not know about the Microsoft name decoration scheme, but LLVM does know how...
2008 Nov 24
2
[LLVMdev] RFC: Mangling Unnamed Global Values
On Nov 24, 2008, at 11:07 AM, Chris Lattner wrote: > > On Nov 24, 2008, at 11:01 AM, Bill Wendling wrote: > >> The symbols I'm interested in already have internal linkage (as you >> would expect). But because the mangler is in charge of assigning them >> names, they never seem to be decorated with the 'L' in front. . . . > > If you use SET_DECL_ASSEMBLER_NAME (something like that) you can > specify the full name for this stuff, including the L. This is how > other Objc metadata works. Yu...
2012 Dec 25
0
[LLVMdev] [DragonEgg] Strange call to @"\01__isoc99_fscanf"
...;, while DragonEgg gives "\01__isoc99_fscanf". We > generally use DragonEgg as our compiler frontend, so it is more important. > What could be the reason of "\01" issue? \01 is the magic prefix from asm("") thing in C sources. Basically this is the instruction to mangler not to change the name in any way, so, it should be emitted to assembler / binary code as "__isoc99_fscanf". How does .s / .o look like? -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
2016 Jul 29
0
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...: > > > diff --git a/LogicalDylib.h b/LogicalDylib.h > index 84e3bf5..2e35cfd 100644 > --- a/LogicalDylib.h > +++ b/LogicalDylib.h > @@ -17,6 +17,8 @@ > #include "JITSymbol.h" > #include <string> > #include <vector> > +#include "llvm/IR/Mangler.h" > +#include "llvm/Support/raw_ostream.h" > > namespace llvm { > namespace orc { > @@ -77,6 +79,24 @@ public: > return LMH->Resources; > } > > + static std::string mangle(StringRef Name, const DataLayout &DL) { > + std::string Mang...