[llvm-commits] [PATCH] Add more functions to the TLI.

Hal Finkel hfinkel at anl.gov
Tue Jan 22 10:51:23 PST 2013


----- Original Message -----
> From: "Meador Inge" <meadori at codesourcery.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: llvm-commits at cs.uiuc.edu
> Sent: Tuesday, January 22, 2013 10:36:24 AM
> Subject: Re: [llvm-commits] [PATCH] Add more functions to the TLI.
> 
> 
> On Jan 21, 2013, at 10:32 PM, Hal Finkel wrote:
> 
> >>   namespace LibFunc {
> >>     enum Func {
> >> +      /// int \1__isoc99_scanf (const char *format, ...)
> >> +      escape1___isoc99_scanf,
> > 
> > Why do these have escape1?
> 
> Clang adds the escapes:
> http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-December/056760.html.
> The only thing left in the simplify-libcalls pass are the bits that
> annotate library calls
> with attributes.  That pass annotates the escaped names when they are
> seen.

Okay, but the \1 is a directive not to mangle the name, and this seems separate from matching the function names. Maybe clang always generates them with \1, but clang is not the only possible frontend. Why not match the function names with or without the \1 on any name?

Thanks again,
Hal

> 
> I plan to migrate the library call annotation pieces to the
> functionattrs pass per what was discussed
> here:
> http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121126/157684.html.
> In order to do that I need all of the functions that may be annotated
> in the TLI.
> 
> --
> Meador Inge
> CodeSourcery / Mentor Embedded
> http://www.mentor.com/embedded-software
> 
> 



More information about the llvm-commits mailing list