search for: alignment

Displaying 20 results from an estimated 11888 matches for "alignment".

2007 Apr 01
4
[LLVMdev] PR400 - alignment for LD/ST
On Sun, 1 Apr 2007, Christopher Lamb wrote: > Also I wanted to clear something up about the meaning of the alignment > attribute. My thinking is that this indicates over/under alignment with > respect to natural alignment for the type. This is to say in the Load/Store > instruction classes the default alignment value will be zero, meaning natural > alignment for the given type. If the alignment va...
2015 May 11
2
[LLVMdev] How to Store variable allocation in Registers
Hi Bruce!! Im using "C" language. As you said...,i tried using Global pointer..,but i still am not able to get the Registers exactly as i wanted. I found "-mem2reg" as a better alternative. But Problem is even though the resulting Intermediate file( .ll ) is good...,the final assembly file( .s) file is making a lot of DCE. Im Posting an example : *Original Intermediate
2015 Mar 03
2
[LLVMdev] Need a clue to improve the optimization of some C code
Hi I have some inline function C code, that llvm could be optimizing better. Since I am new to this, I wonder if someone could give me a few pointers, how to approach this in LLVM. Should I try to change the IR code -somehow- to get the code generator to generate better code, or should I rather go to the code generator and try to add an optimization pass ? Thanks for any feedback. Ciao
2018 Mar 06
0
Sieve filter doesn't respect mailbox separator
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> <title></title> <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
2013 Oct 28
2
[LLVMdev] loop vectorizer says Bad stride
Verifying function running passes ... LV: Checking a loop in "bar" LV: Found a loop: L0 LV: Found an induction variable. LV: We need to do 0 pointer comparisons. LV: Checking memory dependencies LV: Bad stride - Not an AddRecExpr pointer %13 = getelementptr float* %arg2, i32 %1 SCEV: ((4 * (sext i32 {(256 + %arg0),+,1}<nw><%L0> to i64)) + %arg2) LV: Src Scev: {((4 * (sext
2007 Nov 07
7
[LLVMdev] RFC: llvm-convert.cpp Patch
...y is generated. The testcase is this: $ cat testcase.c void Qux() { char Bar[11] = {0}; } What happens is that we produce LLVM code like this: call void @llvm.memcpy.i64( i8* %event_list2, i8* getelementptr ([11 x i8]* @C.103.30698, i32 0, i32 0), i64 11, i32 8 ) Notice that it has an 8-byte alignment. However, the Bar variable has 1-byte alignment, because it's being placed into the "redzone". The generic code for the function is: $ more testcase.c.t03.generic Qux () { static char C.0[11] = {0}; char Bar[11]; Bar = C.0; } Anyway, it turns out that the gimplifier was gener...
2016 Feb 09
2
Modified LLVM IR
Hi, I want to edit LLVM generated IR file, like as given below, Original LLVM IR file, @.str2 = private unnamed_addr constant [17 x i8] c"\0AI am in one_11\0A\00", align 1 ; Function Attrs: nounwind define i32 @one_1(i32 %ivar1, i32 %ivar2) #0 { entry: %ivar1.addr = alloca i32, align 4 %ivar2.addr = alloca i32, align 4 %isum = alloca i32, align 4 store i32 %ivar1, i32*
2007 Apr 02
2
[LLVMdev] PR400 - alignment for LD/ST
On Mon, 2 Apr 2007, Christopher Lamb wrote: > Here's a related question. It seems that there might be a benefit in knowing > about two alignment values for a load/store. The alignment of the load/store > itself, but potentially also the alignment of the base pointer used for the > load/store. Having an alignment attribute on pointer types would solve both > these issues, but having a single alignment attribute on loads/stores &...
2013 Nov 11
2
[LLVMdev] What's the Alias Analysis does clang use ?
Hi, LLVM community: I found basicaa seems not to tell must-not-alias for __restrict__ arguments in c/c++. It only compares two pointers and the underlying objects they point to. I wonder how clang does alias analysis for c/c++ keyword restrict. let assume we compile the following code: $cat myalias.cc float foo(float * __restrict__ v0, float * __restrict__ v1, float * __restrict__ v2, float *
2020 Apr 17
1
Any advice for installing Samba as an AD server on Raspbian Buster with BIND9 and ISC DHCP?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> <title></title> <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
2011 Feb 14
1
[LLVMdev] broken alignment in stack(caused by bug in SelectionDAGBuilder) causes invalid schedules with r125471 and newer
The following problems happens with architectures, where stack alignment is smaller than the biggest preferred alignment for any data type SP pointer may point anywhere with alignment of stack alignment (4 in our case) SelectionDAGBuilder however calls CreateStackObject with preferred alignment is given data type(8 in our problemaric case. The ABI alignment for this...
2018 Mar 14
3
Sieve not working.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> <title></title> <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
2013 Oct 28
0
[LLVMdev] loop vectorizer says Bad stride
Frank, It looks like the loop vectorizer is unable to tell that the two stores in your code never overlap. This is probably because of the sign-extend in your code. Can you extend the indices to 64bit ? Thanks, Nadav On Oct 28, 2013, at 1:38 PM, Frank Winter <fwinter at jlab.org> wrote: > Verifying function > running passes ... > LV: Checking a loop in "bar" > LV:
2013 Nov 12
0
[LLVMdev] What's the Alias Analysis does clang use ?
Hi, Your problem is that the function arguments, which are makes as noalias, are not being directly used as the base objects of the array accesses: > %v0.addr = alloca float*, align 8 > %v1.addr = alloca float*, align 8 > %v2.addr = alloca float*, align 8 > %t.addr = alloca float*, align 8 ... > store float* %v0, float** %v0.addr, align 8 > store float* %v1, float** %v1.addr,
2013 Feb 14
1
[LLVMdev] LiveIntervals analysis problem
Hello everyone, please I need your help. To reproduce my problem I created simple pass for backends (TestPass.cpp in attached files). That pass I call from Mips backend in this way (MipsTargetMachine.cpp): bool MipsPassConfig::addPreRegAlloc() { addPass(createTestPass()); return false; } The problem becomes, when I am trying compile file ldtoa.ll (in attached files). Compiling
2007 Nov 07
0
[LLVMdev] RFC: llvm-convert.cpp Patch
...estcase.c > void Qux() { > char Bar[11] = {0}; > } > > What happens is that we produce LLVM code like this: > > call void @llvm.memcpy.i64( i8* %event_list2, i8* getelementptr ([11 > x i8]* @C.103.30698, i32 0, i32 0), i64 11, i32 8 ) > > Notice that it has an 8-byte alignment. However, the Bar variable has > 1-byte alignment, because it's being placed into the "redzone". The > generic code for the function is: > > $ more testcase.c.t03.generic > Qux () > { > static char C.0[11] = {0}; > char Bar[11]; > > Bar = C.0; > } &...
2007 Apr 02
0
[LLVMdev] PR400 - alignment for LD/ST
On Apr 1, 2007, at 3:11 AM, Chris Lattner wrote: > On Sun, 1 Apr 2007, Christopher Lamb wrote: >> Also I wanted to clear something up about the meaning of the >> alignment >> attribute. My thinking is that this indicates over/under alignment >> with >> respect to natural alignment for the type. This is to say in the >> Load/Store >> instruction classes the default alignment value will be zero, >> meaning natural >> alig...
2012 Oct 28
2
[LLVMdev] Annotating known pointer alignment
...t; Which is compiled to >> define i64 @foo(i64* %bar) nounwind uwtable ssp { >> store i64 42, i64* %bar, align 8 >> %0 = ptrtoint i64* %bar to i64 >> %and = and i64 %0, 3 >> ret i64 %and >> } >> >> 1) How can clang deduce the alignment on the store? > > by consulting the C standard :) Ah, good to know. ยง6.3.2.3 (7) even states that casting alone leads to undefined behaviour, if the resulting pointer is not correctly aligned. > It emits a store without >> alignment information, > > I assume you mean: with...
2016 Feb 10
2
Modified LLVM IR
Hi, I want to call/add some functions(that defined in another file) on top of some functions, and reflect the same changes in object file. No, I am not looking for contractor. Thanks, Deepika On Tue, Feb 9, 2016 at 7:04 PM, mats petersson <mats at planetcatfish.com> wrote: > What is the condition for adding this code? > > What have you tried so far? [Or are you looking for a
2018 Mar 02
2
Sieve filter doesn't respect mailbox separator
namespace separator is '.', this sieve script incorrectly tries to put the mail inside a mailbox rather that beside it, for example if the mailbox is named 'example', the mail will be put in the path 'example/.Spam' instead of 'example.Spam' require ["fileinto"]; if header :contains "X-Spam" "yes" { ? fileinto "Spam"; } #