Displaying 20 results from an estimated 300 matches similar to: "[LLVMdev] About a problem in SROA"
2018 Jan 04
1
InstAlias with tied operands - can it be supported?
Hi Daniel,
I defined checkEarlyTargetMatchPredicate() to explicitly check for the
tied operands, and it worked.
I could define an alias like: InstAlias<"oldOP $rd, $rd, $rs1", (NEWOP
$rd, $rs1)>
However, I had to additionally change AsmMatcherEmitter 'Hack' variable
setting to allow the repeated operand $rd in the AsmString.
Do you or anyone else know the history
2012 Nov 14
0
[LLVMdev] About a problem in SROA
Hello,
I'm trying to use clang to compile a file on Mac OS (x86_64) and get the following error.
<inline asm>:4:2: error: instruction requires a CPU feature not currently enabled
jmp *%edx
^
fatal error: error in backend: Error parsing inline asm
This file does compile on an Ubuntu 32bit machine
I checked on google and didn't find anything helpful about it.
Does
2017 Dec 15
0
InstAlias with tied operands - can it be supported?
Hi,
On Instructions you can use checkEarlyTargetMatchPredicate() to check that the operands are the same. There's an example of that in MipsAsmParser.cpp for DATI and DAHI. I can't think of a reason TableGen couldn't be made to allow this for InstAlias too.
> On 15 Dec 2017, at 02:12, via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hello,
>
> InstAlias
2017 Dec 15
2
InstAlias with tied operands - can it be supported?
Hello,
InstAlias does not allow tied operands (repeated operands) in the asm
string to be matched.
It seems this situation is explicitly prevented in
AsmMatcherEmitter.cpp:
if (!Hack)
PrintFatalError(TheDef->getLoc(),
"ERROR: matchable with tied operand '" + Tok +
"' can never be matched!");
2015 Apr 16
3
[LLVMdev] double* to <2 x double>*
Does anyone know how to instrument *double* to <2 x doulbe>**, e.g., 2.2
--> <2.2, 2.2>?
For example, I want to change the following IR code
%arrayidx1 = getelementptr inbounds [100 x double]* @main.B, i32 0, i32
%i.021
%1 = load double* %arrayidx1, align 4, !tbaa !0
to:
%arrayidx1 = getelementptr inbounds [100 x double]* @main.B, i32 0, i32
%i.021
%1 = bitcast double* %arrayidx1
2012 Nov 28
0
[LLVMdev] [llvm-commits] [dragonegg] r168787 - in /dragonegg/trunk: src/x86/Target.cpp src/x86/x86_builtins test/validator/c/copysignp.c
Hi Pawel, can you please pull this dragonegg patch into 3.2. I am the
code owner for dragonegg.
Thanks a lot, Duncan.
On 28/11/12 13:44, Duncan Sands wrote:
> Author: baldrick
> Date: Wed Nov 28 06:44:50 2012
> New Revision: 168787
>
> URL: http://llvm.org/viewvc/llvm-project?rev=168787&view=rev
> Log:
> Add support for GCC's vector copysign builtins, fixing
2005 Aug 10
1
[LLVMdev] ValueTy not set appropriately in Value.h?
Hi, for some temporary debugging I wanted to know what sort of Value I
was seeing, and I ran across this comment in Value.h - it's probably a
minor point, but unless I'm missing something I think either the last
line of the comment is wrong or the code is.
It appears in rev 1.58, as part of fixing bug 122.
00134 /// getValueType - Return an ID for the concrete type of this
object.
2010 Aug 18
3
[LLVMdev] Using ValueSymbolTable...
Nick Lewycky wrote:
>
>
>
> It's maintained by LLVM for you, by Value::setName and other methods.
>
> Nick
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
I am getting the following error when trying to
2015 Apr 17
2
[LLVMdev] how to use "new instruction()"
Thanks Nick, that's something what I am trying to implement as the
following. But it seems I still only get the constant value not the
instruction. Could you please go over the following instruction and see
what wrong with it? Thanks for your time again.
Value *vecVal = NULL;
IRBuilder<> builder(&*pInst);
Type *vecTy = VectorType::get(Type::getDoubleTy(ctxt), 2);
Value
2018 May 31
1
[SROA][DebugInfo][GSoC] Testing SROA on amalgamated sqlite source
> That is good to hear / expected, since we went though great lengths to ensure that SROA preserves variable debug info.
>
> Have you looked at the location-less phi instructions?
> Does empty mean line 0 or do you mean they have no debug location whatsoever?
Most of them have line 0, only 12 are locationless.
> Are they empty for good reasons or does it look more like an
2018 May 30
0
[SROA][DebugInfo][GSoC] Testing SROA on amalgamated sqlite source
> On May 30, 2018, at 8:37 AM, Anast Gramm <anastasis.gramm2 at gmail.com> wrote:
>
> Introduction
> ============
>
> `SROA' is an early stage pass running at the very beginning of the
> pipeline in `-O{1,2,3}'. Greg Bedwell's report from his DExTer tool
> shows SROA on function as one of the major culprits of Debug Info
> loss.
>
> With
2018 Jun 04
2
[SROA][DebugInfo][GSoC] Testing SROA on amalgamated sqlite source
FWIW, I've raised the LICM issue here:
https://bugs.llvm.org/show_bug.cgi?id=37682
On 31 May 2018 at 13:28, Anast Gramm <anastasis.gramm2 at gmail.com> wrote:
> Thanks,
> These are very helpful.
>
> As I understand it, SROA and LICM render some variables
> "useless" by optimizing the code to not use them. Hence we can't debug
> them.
>
>
2015 Apr 17
2
[LLVMdev] how to use "new instruction()"
I got it. Thanks, Nick. So, it is back to the previous problem. If I have
the following instruction:
%3 = fadd double %1, double %2
I want to change it into
%6 = fadd <2 x double> %4, double %5
where %4 = <double %1, double %1>, %5 = <double %2, double %2>, how can I
do this?
Thanks,
Best
On Fri, Apr 17, 2015 at 1:56 AM, Nick Lewycky <nicholas at mxc.ca> wrote:
>
2015 Apr 17
2
[LLVMdev] how to use "new instruction()"
It seems that the problem was because I used builder.CreateFAdd to create
a <2 x double> vectortype FADD instruction. It works if I use it to create
the scalar version FADD. I want to have an instruction like: *%2 = fadd <2
x double> undef, <2 x double> undef. *The following is the way I used to
create the vectorized FADD instruction:
//pInst is a double type instruction
2018 May 30
2
[SROA][DebugInfo][GSoC] Testing SROA on amalgamated sqlite source
>
> is in the business of deciding, but it does score it as a difference
> because it now, at no point, sees the expression "first" evaluate to a
> value of 5, or "total" to a value of 8 which it did previously. From the
> source-level debugging experience, the variables now just get updated
> between iterations.
>
Obviously should've been 7 for that
2013 Apr 06
0
[LLVMdev] A strange testing case of SROA
Hi Shuxin,
> Following is excerpted from dynamic-vector-gep.ll.
> The resulting "extractelement" seems to always return 0.0f regardless the value
> idx1 and idx2 is holding.
> Am I missing something here or there is something fishy take place?
maybe this is the same as PR15674.
Ciao, Duncan.
2013 Apr 06
1
[LLVMdev] A strange testing case of SROA
Hi, Duncan:
Thank you for sharing this info. I will check and go back to you
next Monday.
In case PR15674 is caused by the same bug, I will put a comment over
there and close it.
Thank you again!
Shuxin
On 4/6/13 2:55 AM, Duncan Sands wrote:
> Hi Shuxin,
>
>> Following is excerpted from dynamic-vector-gep.ll.
>> The resulting "extractelement" seems to
2015 Nov 10
2
SROA and volatile memcpy/memset
Hi,
I have a customer testcase where SROA splits a volatile memcpy and we
end up generating bad code[1]. While this looks like a bug, simply
preventing SROA from splitting volatile memory intrinsics causes
basictest.ll for SROA to fail. Not only that, but it also seems like
handling of volatile memory transfers was done with some intent.
What are the design decisions in SROA regarding
2010 Aug 18
2
[LLVMdev] Using ValueSymbolTable...
Hi all,
I have a question regarding populating ValueSymbolTable of a Function.
Is it that ValueSymbolTable is populated automatically whenever an alloca
instruction is created using IRBuilder or do we need to explicitly
populate??
If we need to populate explicitly, the insert method in ValueSymbolTable is
private, so how can we do it?
Currently, I am trying to access the symbol table as below:
2010 Aug 18
0
[LLVMdev] Using ValueSymbolTable...
subramanyam wrote:
>
> Hi all,
> I have a question regarding populating ValueSymbolTable of a Function.
> Is it that ValueSymbolTable is populated automatically whenever an alloca
> instruction is created using IRBuilder or do we need to explicitly
> populate??
It's maintained by LLVM for you, by Value::setName and other methods.
Nick