search for: symname

Displaying 20 results from an estimated 33 matches for "symname".

2009 Sep 16
1
list of symbols to substitution
...ing to use a list of symbols as one of the values to be substituted in a substitute expression, but I can't figure out how to write the correct expression for my problem. Let me illustrate a simple example of what I'm trying to do. The following code snippet will evaluate to '5': symname <- 'foo' foo <- 5 expr <- substitute(c(expr), list(expr = as.symbol(symname))) eval(expr) I would like the next similar example to evaluate to the list('5', '6', '7'), but instead it evaluates to the list(foo, bar, baz) where the type of foo, bar, and baz a...
2008 Mar 27
2
[LLVMdev] Hooking the global symbol resolver
...s. It was not my intention to "extend" a module in mid compile. Rather, it was my thought that we could provide the unresolved symbol by emitting and compiling a second module. Where the LLVM infrastructure currently has something like this: if (!(sym = llvm_resolve_global(GlobalScope, symName))) some_failure_action(); it would now look something like: sym = llvm_resolve_global(GlobalScope, symName); if (!sym && frontend_has_symbol_generator && frontend_generate_symbol(symname)) // Note: if frontend_generate_symbol() has succeeded, it will have //...
2008 Mar 27
0
[LLVMdev] Hooking the global symbol resolver
"Jonathan S. Shapiro" <shap at eros-os.com> writes: [snip] > if (!(sym = llvm_resolve_global(GlobalScope, symName))) > some_failure_action(); > > it would now look something like: > > sym = llvm_resolve_global(GlobalScope, symName); > if (!sym && frontend_has_symbol_generator > && frontend_generate_symbol(symname)) > // Note: if frontend_generate_symbol...
2020 Sep 29
3
OrcV1 removal
...ed the symbol resolution callback to LLVMOrcAddEagerlyCompiledIR to implement this. If a symbol name was scoped to a library, we only searched inside that, rather than globally: /* * Attempt to resolve symbol, so LLVM can emit a reference to it. */ static uint64_t llvm_resolve_symbol(const char *symname, void *ctx) { ... llvm_split_symbol_name(symname, &modname, &funcname); ... if (modname) addr = (uintptr_t) load_external_function(modname, funcname, true, NULL); else addr = (uintptr_t) LLVMSearchForAddressOfSymbol(symname); ... return (uint64_t) addr; } I don't think...
2008 Dec 27
1
Patch to fix small bug in do_External and do_dotcall
I've stumbled upon a small bug/inconsitency in do_External and do_dotcall: Here's an example: % LC_ALL=C R --vanilla < symname-bug.R R version 2.8.0 (2008-10-20) *snip* > options(error=expression(0)) > ## Call 'R_GD_nullDevice' with incorrect parameter count: > .Call("R_GD_nullDevice", 1) Error in .Call("R_GD_nullDevice", 1) : Incorrect number of arguments (1), exp...
2017 Nov 23
1
JIT and atexit crash
Hi, Not sure whether this matches your use case, but the Orc-based JIT used in LLI appears to be using `llvm::orc::LocalCXXRuntimeOverrides` (http://llvm.org/doxygen/classllvm_1_1orc_1_1LocalCXXRuntimeOverrides.html) to override `__cxa_atexit`: https://github.com/llvm-mirror/llvm/blob/release_50/tools/lli/OrcLazyJIT.h#L74
2018 May 23
0
[PATCH v3 18/27] xen: Adapt assembly for PIE support
...+++++---- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c index a35cc337f883..29283ad3950f 100644 --- a/arch/x86/tools/relocs.c +++ b/arch/x86/tools/relocs.c @@ -832,6 +832,16 @@ static int is_percpu_sym(ElfW(Sym) *sym, const char *symname) strncmp(symname, "init_per_cpu_", 13); } +/* + * Check if the 32-bit relocation is within the xenpvh 32-bit code. + * If so, ignores it. + */ +static int is_in_xenpvh_assembly(ElfW(Addr) offset) +{ + ElfW(Sym) *sym = sym_lookup("pvh_start_xen"); + return sym && (o...
2008 Mar 27
0
[LLVMdev] Hooking the global symbol resolver
Hi Jonathan, In the context of a static compiler, I would recommend that you implement your own “on the side” symbol table in order to track this state and perform on-demand instantiation as required. It is worthwhile to consider the LLVM module to be a passive output sink, not an active object. The JIT compiler, by contrast, is an active object, cooperating with its environment via
2007 Apr 13
2
R on Solaris 10 x64
...space_id = 0, file_space_id = 0, plist_id = 671088643, buf = 0x9f79580), line 586 in "H5Dio.c" [6] vector_io(call = 0x97234ec, writeflag = 1, dataset = 335544330, space = 268435472, obj = 0x98386a0), line 535 in "hdf5.c" [7] hdf5_write_vector(call = 0x97234ec, id = 67108867, symname = 0x9cf35d0 "geneNames", val = 0x98386a0), line 693 in "hdf5.c" [8] hdf5_save_object(call = 0x97234ec, fid = 67108867, symname = 0x9cf35d0 "geneNames", val = 0x98386a0), line 957 in "hdf5.c" [9] do_hdf5save(args = 0x9723284), line 1104 in "hdf5.c&quo...
2008 Mar 26
4
[LLVMdev] Hooking the global symbol resolver
Okay, we're starting to dig in, and I've hit a question that will no doubt seem strange. Context: BitC is a polymorphic language. Since it has unboxed value types, our approach to compiling a polymorphic function is to polyinstantate it -- once for each signature. The name mangling scheme is both stable and reversible. At the site of the use occurrence, we can fully determine the mangled
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 04/13] Useful debugging
..., offset, modname); + if (msym) { + kfree(kstuff.addresses); + return strncpy(namebuf, msym, KSYM_NAME_LEN); + } + +out: + kfree(kstuff.addresses); + return NULL; +} + +void lguest_print_address(struct lguest_vcpu *vcpu, unsigned long address) +{ + unsigned long offset = 0, symsize; + const char *symname; + char *modname; + char *delim = ":"; + char namebuf[KSYM_NAME_LEN+1]; + + symname = lguest_syms_lookup(vcpu, address, &symsize, &offset, + &modname, namebuf); + if (!symname) { + printk(" [<%016lx>]\n", address); + return; + } + if (!modname) + mod...
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 04/13] Useful debugging
..., offset, modname); + if (msym) { + kfree(kstuff.addresses); + return strncpy(namebuf, msym, KSYM_NAME_LEN); + } + +out: + kfree(kstuff.addresses); + return NULL; +} + +void lguest_print_address(struct lguest_vcpu *vcpu, unsigned long address) +{ + unsigned long offset = 0, symsize; + const char *symname; + char *modname; + char *delim = ":"; + char namebuf[KSYM_NAME_LEN+1]; + + symname = lguest_syms_lookup(vcpu, address, &symsize, &offset, + &modname, namebuf); + if (!symname) { + printk(" [<%016lx>]\n", address); + return; + } + if (!modname) + mod...
2020 Sep 24
2
OrcV1 removal
Hi All, The Kaleidoscope tutorials have now been updated on the orcv1-removal branch. I will try to summarise the state of the work and provide some examples in the ORC JIT Weekly mailout tomorrow. The short version is that I think this is ready to land on the mainline. If anyone wants to check out the OrcV1 removal branch and provide feedback now is the time. Otherwise I will aim to land the
2007 Apr 18
1
[PATCH] lguest32 kallsyms backtrace of guest.
...bolsize, offset, modname); + if (msym) { + kfree(kstuff.addresses); + return strncpy(namebuf, msym, KSYM_NAME_LEN); + } + +out: + kfree(kstuff.addresses); + return NULL; +} + +void lguest_print_address(struct lguest *lg, unsigned long address) +{ + unsigned long offset = 0, symsize; + const char *symname; + char *modname; + char *delim = ":"; + char namebuf[KSYM_NAME_LEN+1]; + + symname = lguest_syms_lookup(lg, address, &symsize, &offset, + &modname, namebuf); + if (!symname) { + printk(" [<%016lx>]\n", address); + return; + } + if (!modname) + modna...
2007 Apr 18
1
[PATCH] lguest32 kallsyms backtrace of guest.
...bolsize, offset, modname); + if (msym) { + kfree(kstuff.addresses); + return strncpy(namebuf, msym, KSYM_NAME_LEN); + } + +out: + kfree(kstuff.addresses); + return NULL; +} + +void lguest_print_address(struct lguest *lg, unsigned long address) +{ + unsigned long offset = 0, symsize; + const char *symname; + char *modname; + char *delim = ":"; + char namebuf[KSYM_NAME_LEN+1]; + + symname = lguest_syms_lookup(lg, address, &symsize, &offset, + &modname, namebuf); + if (!symname) { + printk(" [<%016lx>]\n", address); + return; + } + if (!modname) + modna...
2012 Nov 27
1
Problems with MinGW and boost on Windows
Hi, I am not sure how widespread this problem is, but definitely occurs for me on 64 bit Win 7 with a 64 bit R. I think I have isolated the issue (to a certain extent) in the attached Test.cpp file. Basically, I think linking with boost serialization is causing the plugin to fail. If I compile Test.cpp with line 43 (Dummy* Read() ...) commented out, I get the expected output in R: >
2008 Jan 09
7
An "R is slow"-article
Hi all, Reading the wikipedia page on R, I stumbled across the following: http://fluff.info/blog/arch/00000172.htm It does seem interesting that the C execution is that much slower from R than from a native C program. Could any of the more technically knowledgeable people explain why this is so? The author also have some thought-provoking opinions on R being no-good and that you should write
2018 Mar 13
32
[PATCH v2 00/27] x86: PIE support and option to extend KASLR randomization
Changes: - patch v2: - Adapt patch to work post KPTI and compiler changes - Redo all performance testing with latest configs and compilers - Simplify mov macro on PIE (MOVABS now) - Reduce GOT footprint - patch v1: - Simplify ftrace implementation. - Use gcc mstack-protector-guard-reg=%gs with PIE when possible. - rfc v3: - Use --emit-relocs instead of -pie to reduce
2018 Mar 13
32
[PATCH v2 00/27] x86: PIE support and option to extend KASLR randomization
Changes: - patch v2: - Adapt patch to work post KPTI and compiler changes - Redo all performance testing with latest configs and compilers - Simplify mov macro on PIE (MOVABS now) - Reduce GOT footprint - patch v1: - Simplify ftrace implementation. - Use gcc mstack-protector-guard-reg=%gs with PIE when possible. - rfc v3: - Use --emit-relocs instead of -pie to reduce
2017 Oct 04
28
x86: PIE support and option to extend KASLR randomization
These patches make the changes necessary to build the kernel as Position Independent Executable (PIE) on x86_64. A PIE kernel can be relocated below the top 2G of the virtual address space. It allows to optionally extend the KASLR randomization range from 1G to 3G. Thanks a lot to Ard Biesheuvel & Kees Cook on their feedback on compiler changes, PIE support and KASLR in general. Thanks to