Displaying 20 results from an estimated 1400 matches similar to: "[LLVMdev] Passing structures by value on Windows"
2010 Jun 05
0
[LLVMdev] Fwd: Passing structures by value on Windows
---------- Forwarded message ----------
From: lost <lostfreeman at gmail.com>
Date: 2010/6/5
Subject: Re: [LLVMdev] Passing structures by value on Windows
To: Anton Korobeynikov <anton at korobeynikov.info>
Ok, but how to bitcast structure?
Documentation<http://llvm.org/docs/LangRef.html#i_bitcast>says that
bitcast does not applicable to aggregate values.
2010/6/3 Anton
2010 Sep 16
4
[LLVMdev] Accurate garbage collection
Hello!
I'm looking at "Overview of available features" here:
http://llvm.org/docs/GarbageCollection.html#collector-algos and can't
understand something.
First, does table header mean that there are already some GC's
implemented besides "shadow stack"? E.g. can I just use them?
Second, does row "JIT", "NO" mean that GC is not compatible with
2010 Sep 17
0
[LLVMdev] Accurate garbage collection
Hi Victor,
You can write your own GC or use other's GC with LLVM. What LLVM provides is
a framework to generate a representation of objects locations in a method's
frames. Right now, LLVM can emit the shadow stack (which dynamically updates
the locations), or the ocaml format. If you have implemented a GC, you can
parse the ocaml format to locate the objects.
I think the web page needs
2012 Mar 02
2
[LLVMdev] Access Violation using ExecutionEngine on 64-bit Windows 8 Consumer Preview
Hi Rotem,
Thank to you, and especially to Marina! The problem gone. I'm a bit
interested, what is the reason it worked in Win7, and not in Win8.
I've recently used Process Explorer to discover, that the call was to
ntdll.dll, which in Win8 is loaded to the totally different address.
Best regards,
Victor Milovanov
Moscow State University graduate student
2012/3/3 Rotem, Nadav
2012 Mar 03
0
[LLVMdev] Access Violation using ExecutionEngine on 64-bit Windows 8 Consumer Preview
On Windows, the LLVM JIT runner looks for the '_chkstk' symbol by enumerating all of the loaded DLLs. On Win8, NTDLL.DLL (where _chkstk is defined) is found in a location that is more than 32bits bytes away from the jitted code. Marina's patch changes the code that generates a call to '_chkstk' from PCREL32 (which uses a 32bit offset) to an indirect call (which uses a 64bit
2015 Sep 01
2
[RFC] New pass: LoopExitValues
On Mon, Aug 31, 2015 at 5:52 PM, Jake VanAdrighem
<jvanadrighem at gmail.com> wrote:
> Do you have some specific performance measurements?
Averaging 4 runs of 10000 iterations each of Coremark on my X86_64
desktop showed:
-O2 performance: +2.9% faster with the L.E.V. pass
-Os size: 1.5% smaller with the L.E.V. pass
In the case of Coremark, the benefit comes mainly from the matrix
2015 Aug 31
2
[RFC] New pass: LoopExitValues
Hello LLVM,
This is a proposal for a new pass that improves performance and code
size in some nested loop situations. The pass is target independent.
>From the description in the file header:
This optimization finds loop exit values reevaluated after the loop
execution and replaces them by the corresponding exit values if they
are available. Such sequences can arise after the
2013 Jan 08
2
rsync in conjunction with the --link-dest option does not output deleted files
Hi,
I want to use rsync to make daily backups using hard-links in this way:
rsync -av --delete --link-dest=../backup_old ./source/. ./backup_new
This works great, but the problem is, that rsync does not show correctly
what action it performs (-v option). It shows correctly all new and
changed files/folders, but it does not show files that were deleted.
This works only if I do not use the
2012 Feb 29
1
[LLVMdev] Restrictions on bitcast of arbitrary vector types?
Hi,
The LLVM lang ref (http://llvm.org/docs/LangRef.html#i_bitcast) notes
that bitcast of vectors to vectors is OK, provided the vectors are of
the same size. In attempting this on large vector types (e.g. 16xi64 ->
16xf64), I get assertions related to Extended Value Types when
attempting to perform code generation, but no errors at the BC level. Is
it simply unsupported to stray outwith
2015 Feb 13
2
[LLVMdev] trunk's optimizer generates slower code than 3.5
I submitted the problem report to clang's bugzilla but no one seems to
care so I have to send it to the mailing list.
clang 3.7 svn (trunk 229055 as the time I was to report this problem)
generates slower code than 3.5 (Apple LLVM version 6.0
(clang-600.0.56) (based on LLVM 3.5svn)) for the following code.
It is a "8 queens puzzle" solver written as an educational example. As
2015 Feb 14
2
[LLVMdev] trunk's optimizer generates slower code than 3.5
The regressions in the performance of generated code, introduced
by the llvm 3.6 release, don't seem to be limited to this 8 queens
puzzle" solver test case. See...
http://www.phoronix.com/scan.php?page=article&item=llvm-clang-3.5-3.6-rc1&num=1
where a bit hit in the performance of the Sparse Matrix Multiply test
of the SciMark v2.0 benchmark was observed as well as others.
2015 Feb 14
2
[LLVMdev] trunk's optimizer generates slower code than 3.5
Using the SciMark 2.0 code from
http://math.nist.gov/scimark2/scimark2_1c.zip compiled with the
same...
make CFLAGS="-O3 -march=native"
I am able to reproduce the 22% performance regression in the run time
of the Sparse matmult benchmark.
For 10 runs of the scimark2 benechmark, I get 998.439+/-0.4828 with
the release llvm clang 3.5.1 compiler
and 1217.363+/-1.1004 for the current
2004 Sep 02
1
GSM codec bandwidth
I've a question about the bandwidth consumed by IAX2/GSM.
According to the wiki page, the GSM codec should run about 13 kilo-bits/sec
for a voice encoding.
However, watching gkrellm when I initiate a call to Digium, it looks like the
channel is taking a consistent 5-6 kilo-bytes/sec. That's a lot more
bandwidth than it should take. Is there perhaps a setting I have wrong
somethere in
2016 Nov 17
4
RFC: Insertion of nops for performance stability
Hi all,
These days I am working on a feature designed to insert nops for IA code generation that will provide performance improvements and performance stability. This feature will not affect other architectures. It will, however, set up an infrastructure for other architectures to do the same, if ever needed.
Here are some examples for cases in which nops can improve performance:
1. DSB
2013 Sep 12
1
[LLVMdev] bug in X86 disasm code?
hi,
i found this code in X86DisassemblerDecoder.h
#define EA_BASES_32BIT \
ENTRY(EAX) \
ENTRY(ECX) \
ENTRY(EDX) \
ENTRY(EBX) \
ENTRY(sib) \
ENTRY(EBP) \
ENTRY(ESI) \
ENTRY(EDI) \
ENTRY(R8D) \
ENTRY(R9D) \
ENTRY(R10D) \
ENTRY(R11D) \
2007 Aug 22
1
CentOS v4.5 and Intel 965/G33BY chipsets - PATA support
Greetings CentOS users,
I have run into a hardware issue with the Intel 965 chipset. It appears
that the latest kernel doesn't support the Marvell PATA controller. I can
kickstart the computer, but after the OS is installed the DVD drive can't
be accessed.
There are patches against 2.6.18 for the Marvell PATA controller here:
http://lkml.org/lkml/2006/10/16/157
There is bug
2018 Apr 26
2
windows ABI problem with i128?
I'm trying to use LLVM to create compiler-rt.o on Windows. I use this
command from the compiler-rt project:
[nix-shell:~/downloads/llvm-project/compiler-rt]$ clang -nostdlib -S
-emit-llvm lib/builtins/udivti3.c -g -target x86_64-windows
-DCRT_HAS_128BIT
The resulting LLVM IR is:
=================================================================
; ModuleID = 'lib/builtins/udivti3.c'
2010 Jun 03
0
[LLVMdev] Passing structures by value on Windows
> Is this documented somethere?
This is the standard assumption. The calling convention can be complex
enough and operate with the language-dependent definitions (e.g. "C"
structs, etc.), thus frontend should lower such constructs as needed.
For reference, normal x86-64 ABI has pretty complex rules wrt passing
aggregates by value. You might want to look into llvm-gcc as an
example.
2011 May 18
1
[LLVMdev] Can I get the value of the global variable defined in some module (JITing)
Ok, another explanation. In my runtime that uses LLVM as JIT engine, I
have an instnace of GlobalVariable. The program I run in it writes
some value to this variable. How can I read it?
2011/5/18 Duncan Sands <baldrick at free.fr>:
> Hi,
>
>> I need to define the global variable which would be modified by JITted
>> code. Can I read it from the JITter itself? It is of
2018 Apr 26
0
windows ABI problem with i128?
Most probably you need to properly specify the calling convention the
backend is using for calling the runtime functions. Or implement the
stub for udivti3 that performs the necessary argument lifting.
I guess there is no standard ABI document describing the intended
calling convention here, so I'd just do what mingw64 does here and
make everything here compatible.
On Thu, Apr 26, 2018 at