Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] string input for the integrated assembler"
2015 Mar 18
2
[LLVMdev] string input for the integrated assembler
On Tue, Mar 17, 2015 at 6:14 PM, Tim Northover <t.p.northover at gmail.com> wrote:
>> As a simplification, the compiler deals almost exclusively in pseudo
>> instructions. By x86 analogy, using pseudos to unfold a TEST32rm into
>> MOV32rm + TEST32rr means I can skip the complex operand fitting effort
>> needed to pick specific machine instructions. There are many
2014 Apr 22
2
[LLVMdev] where is F7 opcode for TEST instruction on X86?
hi,
at the moment, TEST instruction is defined with 0xf7 opcode, as
demonstrated below.
$ echo "0xf7 0xc0 0x00 0x00 0x00 0x22"|./Release+Asserts/bin/llvm-mc
-disassemble -arch=x86
.section __TEXT,__text,regular,pure_instructions
testl $570425344, %eax ## imm = 0x22000000
however, i cannot find anywhere this F7 opcode is defined in
2013 Oct 28
2
[LLVMdev] Are Opcode and register mappings exposed anywhere?
I'm iterating over MCInsts and I'd like to examine particular instructions. For example, I'd like to look at all x86 CALL64m instructions. I may be missing something, but it seems like my only option is to use MCInstPrinter::getOpcodeName and compare strings. (Of course, I could iterate through the opcodes and build up a table of the ones I'm interested in to avoid string
2007 Dec 20
1
[LLVMdev] Code Generation Problem llvm 1.9
I sent a long message yesterday describing a problem I thought had to do with the JIT stubs.
After further investigating, the problem seems to be in the code generation.
The following basic block seems to have an error in it's code generation:
__exp.exit: ; preds = %codeRepl258, %__exp_bb_bb.exit
phi double [ 1.000000e+00, %codeRepl258 ], [ %.reload.reload.i,
2013 Oct 28
0
[LLVMdev] Are Opcode and register mappings exposed anywhere?
See the source here:
https://github.com/earl/llvm-mirror/blob/master/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp.
It looks like getRegisterName might do what you want, but I don't know
where it's coming from. (Whether it's a function or a member of a super
class. Hopefully, if it's a member, it's public.)
PS Sorry for the duplicate, Stephen. I forgot to CC the list.
On
2013 Oct 28
2
[LLVMdev] Are Opcode and register mappings exposed anywhere?
On Oct 28, 2013, at 2:02 PM, Tyler Hardin <tghardin1 at catamount.wcu.edu> wrote:
> See the source here: https://github.com/earl/llvm-mirror/blob/master/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp. It looks like getRegisterName might do what you want, but I don't know where it's coming from. (Whether it's a function or a member of a super class. Hopefully, if it's
2019 Mar 25
2
Printing PC-relative offsets - how to get the instruction length?
Hi
In my MC6809 backend, in llvm/lib/Target/MC6809/InstPrinter/MC6809InstPrinter.cpp, I have the routine
void MC6809InstPrinter::printPCRelImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) {
const MCOperand &Op = MI->getOperand(OpNo);
ZZ
if (Op.isImm()) {
int64_t Imm = Op.getImm() + 2; <<<========================
O << "$";
if (Imm
2011 Jun 21
1
[LLVMdev] AsmPrinter directory
Hi,
While trying to debug a linking problem related to AsmPrinter, I found
following lines in {srcdir}/configure file.
if test -f ${srcdir}/lib/Target/${target_to_build}/*AsmPrinter.cpp ; then
LLVM_ENUM_ASM_PRINTERS="LLVM_ASM_PRINTER($target_to_build)
$LLVM_ENUM_ASM_PRINTERS";
It looks like the AsmPrinters are enumerated only if *AsmPrinter.cpp
file is present in
2018 Jun 30
2
Using BuildMI to insert Intel MPX instruction BNDCU failed
Hello everyone, I'm a newbie of llvm. I'm trying to insert Intel MPX
instruction BNDCU with BuildMI. I add my machinefunctionpass
at addPreEmitPass2.
Here is the code of insertion:
BuildMI(MBB, MI, DL, TII->get(X86::BNDCU64rr)).addReg(X86::BND2,
RegState::Define).addReg(X86::R10);
And here is to stack track when I compiler program with modified llc:
2011 Jun 22
2
[LLVMdev] ARM thumb-2 instruction used for non-thumb2 CPUs
On Jun 22, 2011, at 9:00 AM, Renato Golin wrote:
> On 22 June 2011 16:50, Jim Grosbach <grosbach at apple.com> wrote:
>>> This sounds like a dead end as newer binutils are GPLv3.
>>
>> Yeah, that's definitely a very real concern and a big motivation to get the MC based asm parser whipped into usable shape. We're much more in control of our own destiny then.
2015 Apr 14
7
[LLVMdev] RFC building a target MCAsmParser
Hi everyone. We're interested in contributing a Hexagon assembler to MC and
we're looking for comments on a good way to integrate the grammar in to the
infrastructure.
We rely on having a robust assembler because we have a large base of
developers that write in assembly due to low power requirements for mobile
devices. We put in some C-like concepts to make the syntax easier and this
2013 Oct 10
2
[LLVMdev] [PATCH] R600/SI: Embed disassembly in ELF object
Hi,
This patch adds R600/SI disassembly text to compiled object files, when
a code dump is requested, to assist debugging in Mesa clients.
Here's an example of the output in a Mesa client with a corresponding
patch and RADEON_DUMP_SHADERS set:
Shader Disassembly:
S_WQM_B64 EXEC, EXEC ; BEFE0A7E
S_MOV_B32 M0, SGPR6 ; BEFC0306
2011 Jun 22
0
[LLVMdev] ARM thumb-2 instruction used for non-thumb2 CPUs
On Jun 22, 2011, at 6:15 PM, Jim Grosbach wrote:
>
> On Jun 22, 2011, at 9:00 AM, Renato Golin wrote:
>
>> On 22 June 2011 16:50, Jim Grosbach <grosbach at apple.com> wrote:
>>>> This sounds like a dead end as newer binutils are GPLv3.
>>>
>>> Yeah, that's definitely a very real concern and a big motivation to get the MC based asm parser
2014 Feb 07
2
[LLVMdev] most optimised and lowest level IR before machine codegen?
Hi,
I am interested to know how to get the most optimised IR (the compiler
won't do any higher level opt but only translates it down to MC).
I tried to emit LLVM IR in clang by using '-S -O3 -emit-llvm'. Then I
tried to use 'opt' to optimise it, but it seems to produce the same code.
Can I assume that LLVM will not do any code transformation on this level
of IR but
2006 Dec 15
1
[PATCH] cube unfold distance
I have gone ahead and implemented the unfold distance option
as mentioned in the source.
the patch is here
http://home.comcast.net/~moppsy/compiz/cube-unfold-distance.patch
2010 Oct 29
1
[LLVMdev] [LLVMDev] Register Allocation and Kill Flags
I am wondering about register allocation when there is a kill flag on the
MachineOperand. Do I need to remove the kill flag?
This code below is just an example from test\CodeGen\X86\xor.ll
# Machine code for function test3:
Frame Objects:
fi#-2: size=4, align=4, fixed, at location [SP+8]
fi#-1: size=4, align=8, fixed, at location [SP+4]
Function Live Outs: %EAX
BB#0: derived from LLVM BB
2019 Aug 03
3
Manually insert an instruction in SelectionDAG
Hello,
I am trying to insert a .byte/.word in the beginning of a specific LLVM IR instruction when it prints out in assembly (the inserted ‘instruction' only appears in assembly, not in LLVM IR), and I am guessing the best way to do that is to insert it in SelectionDAG as it strips down some LLVM IR instructions when it’s lowered. Can I get some guidance on what function I should use to insert
2019 Apr 26
2
Total response file count limited to 21
Hi,
I recently hit this on a project using a build system that relies heavily
on nested response files. We found we could only have 21 response files total
before getting errors related to the unexpanded response files. I tracked
it down to this code in llvm/lib/Support/CommandLine.cpp
// If we have too many response files, leave some unexpanded. This
avoids
// crashing on
2017 Apr 12
2
[RFC] Nios II backend
Hi,
I'm from Intel compiler department.
I am proposing the integration of a backend targeting Nios II processor architecture.
Nios II is a 32-bit general-purpose RISC processor core designed specifically for the Altera family of FPGAs.
All information at about Nios II can be found at Altera website https://www.altera.com/products/processors/support.html, including the current ISA
2008 Mar 19
2
[LLVMdev] SUBREG instructions and mayLoad/mayStore/etc.
The new SUBREG target-independent instructions aren't getting
mayLoad/mayStore flags set correctly.
For example, in the generated X86GenInstrInfo.inc file,
there is only one entry for INSERT_SUBREG:
{ 5, 4, 1, 0, "INSERT_SUBREG", 0, 0, NULL, NULL,
OperandInfo107 }, // Inst #5 = INSERT_SUBREG
THe sixth field is zero, which means it doesn't have the the