Displaying 20 results from an estimated 53380 matches for "instruction".
2010 Apr 14
4
[LLVMdev] Operand, instruction
Thanks for reply.
I have used AllocaInst, it's working but i think it's only for allocating
some memory for new variable. And CallInst creates a call instruction. I am
looking for creating a add or sub instruction.
I used function instruction(), which gives me error "error: cannot allocate
an object of abstract type ‘llvm::Instruction’" and also "Instruction.h:28:
note: because the following virtual functions are pure within
‘llvm::Instru...
2008 Apr 09
2
[LLVMdev] Compiling Stacker compiler
...no matching function for call to
'llvm::PointerType::get(const llvm::IntegerType*&)'
/opt/src-llvm/include/llvm/DerivedTypes.h:374: note: candidates are:
static llvm::PointerType* llvm::PointerType::get(const llvm::Type*,
unsigned int)
StackerCompiler.cpp: In member function 'llvm::Instruction*
StackerCompiler::get_stack_pointer(llvm::BasicBlock*, llvm::Value*)':
StackerCompiler.cpp:432: error: no matching function for call to
'llvm::GetElementPtrInst::GetElementPtrInst(llvm::GlobalVariable*&,
llvm::Value**, size_t)'
/opt/src-llvm/include/llvm/Instructions.h:480: note: ca...
2019 Aug 09
5
llvm-canon
...ps at various stages of compilation pipeline or after a given optimization pass. Said process can be extremely laborious, and this is especially true when comparing shaders or compute modules. Important semantic differences are often difficult to spot because of the irregular naming and ordering of instructions.
Looking for a solution we have come across Puyan Lotfi's talk at 2018 EuroLLVM on mir-canon (https://www.youtube.com/watch?v=RHT-bh_xo6U). His project inspired us to invest some time into developing a tool called llvm-canon aiming to achieve a very similar goal - a clean and obvious diff but...
2010 Apr 13
3
[LLVMdev] Operand, instruction
Can you please give an example of creating an instruction (for example add
instructions with two operand a and b)? I am trying instruction() for a
while, but no success yet.
Duncan Sands wrote:
>
> Hi,
>
>> Actually i have to implement strength reduction, for that i have to first
>> detect induction variables using ALLEN-COCKE-KENN...
2013 Sep 19
5
[LLVMdev] Proposal to improve vzeroupper optimization strategy
Hi all,
I would like to make a proposal about changing the optimization strategy
regarding when to insert a vzeroupper instruction in the x86 backend.
Current implementation:
vzeroupper is inserted to any functions that use AVX instructions. The
insertion points are:
1) before a call instruction;
2) before a return instruction;
Rationale:
vzeroupper is an AVX instruction; it is inserted to avoid performance penalty
when swit...
2015 Aug 05
2
Fwd: How to use CostModel?
...---- Forwarded message ----------
From: Stephen Thomas <stephen.warner.thomas at gmail.com>
Date: Wed, Aug 5, 2015 at 10:39 AM
Subject: How to use CostModel?
To: LLVM Dev <llvmdev at cs.uiuc.edu>
Hi,
I'm trying to use the built-in CostModel class to estimate the number of
machine instructions for each IR Instruction. To get a feel for what kind
of output the CostModel pass gives, I ran it on the command line like so:
$ cat test.c
int main(){
int r = rand();
if (r > 1){
return ++r;
}
return r*86;
}
$ clang-3.6 -S -emit-llvm test.c -o test.bc
$ opt-3.6 -ana...
2012 Dec 17
4
[LLVMdev] BasicBlock back()
Hello,
I am a beginner of LLVM. I am trying to move among the instructions of a
BasicBlock and I cannot. In this particular example, I try to get the
previous instruction of the end instruction. I am trying 2 methods:
1. I have the following sequence of code:
bool patternDC::runOnBasicBlock(BasicBlock &BB) {
...
if (BB.getTerminator())
{
Instruction...
2010 Apr 13
0
[LLVMdev] Operand, instruction
help__me_please wrote:
> Can you please give an example of creating an instruction (for example add
> instructions with two operand a and b)? I am trying instruction() for a
> while, but no success yet.
>
You need to look for the appropriate subclass of llvm::Instruction and
find the method for creating a new instruction. The method is usually a
static method and...
2015 Nov 26
4
Creating/Deleting a new instruction from LLVM IR
Hi,
I was trying to create a new *Store* instruction and inserting it to LLVM
IR (.ll) file. I found the following constructor in LLVM Manual:
StoreInst::StoreInst
<http://llvm.org/docs/doxygen/html/classllvm_1_1StoreInst.html#aa2a72f9a51b317f5b4ab8695adf59025>
(Value <http://llvm.org/docs/doxygen/html/classllvm_1_1Value.html> * Val,
Val...
2010 Apr 14
0
[LLVMdev] Operand, instruction
There's an entire tutorial at http://llvm.org/docs/tutorial which
includes covers the IRBuilder to generate all sorts of IR, including the
add instruction. You can skip ahead to chapter 3 if you just want to see
LLVM API, but I suggest you read the whole tutorial if you have the time.
Nick
help__me_please wrote:
>
> Thanks for reply.
> I have used AllocaInst, it's working but i think it's only for allocating
> some memory for n...
2010 Apr 14
0
[LLVMdev] Operand, instruction
help__me_please wrote:
> Thanks for reply.
> I have used AllocaInst, it's working but i think it's only for allocating
> some memory for new variable. And CallInst creates a call instruction. I am
> looking for creating a add or sub instruction.
>
> I used function instruction(), which gives me error "error: cannot allocate
> an object of abstract type ‘llvm::Instruction’" and also "Instruction.h:28:
> note: because the following virtual functions are p...
2011 Dec 03
0
[LLVMdev] RFC: Machine Instruction Bundle
Hi,
I'm glad to see some action with regard to static instruction
scheduling and VLIW support in LLVM. I have some questions and
remarks which might not be relevant as I'm not totally familiar
with the current code generation framework of LLVM nor your plan.
On 12/02/2011 10:40 PM, Evan Cheng wrote:
> 2. It must be flexible enough to represent more than V...
2016 Jan 21
3
a bundle with one instruction
> No. Bundles with single instructions are not allowed, but bundles can be
> mixed with instructions that are not bundled.
>
> -Krzysztof
>
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
> by The Linux Foundation
> _______________________________________________
> LLVM Develo...
2018 Dec 03
3
The builtins library of compiler-rt is a performance HOG^WKILLER
...actors SLOWER than even Microsoft's
NOTORIOUS POOR implementation of 64-bit division shipped with
MSVC and Windows!
The reasons: 1. subroutine matroschka, 2. "C" implementation!
JFTR: the target processor "i386" (introduced October 1985) is
a 32-bit processor, it has instructions to divide 64-bit
integers by 32-bit integers, and to multiply two 32-bit
integers giving a 64-bit product!
I expect that a library written 20+ years later takes
advantage of these instructions!
__divsi3 (18 instructions) perform a DIV after 2 calls of abs(),...
2020 Jul 01
4
Handling far branches with fixups or ELF relocs
...is going on nicely, and I've until now found the answer to all my
questions directly in the LLVM source code, or in the documentation.
However, I'm having problems with the AsmBackend class and the handling
of fixups.
The processor I'm working with has a single conditional branch
instruction, JCC, that takes an IP-relative 9-bit immediate offset as
operand. A second version of the instruction takes a register as operand
and can therefore jump to any 32-bit address.
In AsmBackend, there are methods for relaxing instructions, that I
wanted to use to replace "JCC imm9" instr...
2009 Jan 22
0
[LLVMdev] replacing instructions
Ralf Karrenberg wrote:
> Hello everyone,
>
> is there any way to replace an instruction inside LLVM that is more
> elegant than creating a new one, replacing uses and deleting the old one
> if I only want to modify the type? It is generally not a big deal, but
> the issue gets really messy if I am in the middle of iterating over uses
> and start deleting some of them...
&g...
2010 Mar 26
4
[LLVMdev] Operand, instruction
Can anyone tell how to get the result name or instruction name of all
instruction? For example if the instruction is "x=add y,z", here i need "x".
Using getName(), i am getting some instructions result name, but llvm
produces some instruction like "%0=add i32 tmp, 1", here getName() shows
empty string as result name.
So plea...
2007 Dec 05
3
[LLVMdev] Inserting Instructions After Instructions
Dear All,
Given a pointer to an instruction, what is the easiest way to insert one
or more new instructions after that instructions? We used to find the
next instruction using Instruction::getNext(), but this method seems to
have been made private now.
-- John T.
[LLVMdev] Question about porting LLVM - a single instruction op mnemonic with multiple operand forms
2011 Jan 18
4
[LLVMdev] Question about porting LLVM - a single instruction op mnemonic with multiple operand forms
Hello all,
I am at the adding Instruction Set stage of adding new target support into
LLVM. There is a single instruction op mnemonic with multiple operand forms.
For example: Add R1, R2 & Add @R1, R2. I found that there is similar case in
x86 instruction set, such like ADD reg, reg & ADD mem, reg. However, the
solution of x86 is a...
2012 Dec 17
0
[LLVMdev] BasicBlock back()
On 12/17/12 10:34 AM, Alexandru Ionut Diaconescu wrote:
> Hello,
>
> I am a beginner of LLVM. I am trying to move among the instructions of
> a BasicBlock and I cannot. In this particular example, I try to get
> the previous instruction of the end instruction. I am trying 2 methods:
>
>
>
> 1. I have the following sequence of code:
>
> bool patternDC::runOnBasicBlock(BasicBlock &BB) {
> ...
> if...