Displaying 4 results from an estimated 4 matches for "methodbodies".
2009 May 09
1
[LLVMdev] Question on register class
...ginal intention of having special query functions for a
subset of register classes. Suppose I wanted vector register classes
(more than one, say 2-elements and 4-elements). I want to define
special query functions for these classes, like getVectorLength etc. I
can define them using MethodProtos and MethodBodies, but I have to
define them for each one the classes in the set. It will be nice if
there is a way to build a hierarchy of register classes, and dispatch
handlers by finding what class a given RC is. I will appreciate
suggestions on how to do this, or alternative ways to solve this
problem.
Thanks,...
2007 Feb 25
1
[LLVMdev] X86RegisterInfo.td
...ible
// for transforming FPn allocations to STn registers)
def RST : RegisterClass<"X86", [f64], 32,
[ST0, ST1, ST2, ST3, ST4, ST5, ST6, ST7]> {
let MethodProtos = [{
iterator allocation_order_end(const MachineFunction &MF) const;
}];
let MethodBodies = [{
RSTClass::iterator
RSTClass::allocation_order_end(const MachineFunction &MF) const {
return begin();
}
}];
}
Is the "begin()" in there correct? Or should it maybe be "end()"?
Thanks!
-bw
2011 Jun 15
0
[LLVMdev] Custom allocation orders
...AH, CH, DH, BL, BH, SIL, DIL, BPL, SPL,
R8B, R9B, R10B, R11B, R14B, R15B, R12B, R13B]> {
let MethodProtos = [{
iterator allocation_order_begin(const MachineFunction &MF) const;
iterator allocation_order_end(const MachineFunction &MF) const;
}];
let MethodBodies = [{
static const unsigned X86_GR8_AO_64[] = {
X86::AL, X86::CL, X86::DL, X86::SIL, X86::DIL,
X86::R8B, X86::R9B, X86::R10B, X86::R11B,
X86::BL, X86::R14B, X86::R15B, X86::R12B, X86::R13B, X86::BPL
};
GR8Class::iterator
GR8Class::allocation_order_begin(c...
2011 Jul 03
0
[LLVMdev] DLX backend
...R11, R12, R13, R14, R15,
R16, R17, R18, R19, R20, R21, R22, R23,
R24, R25, R26, R27, R28, R29, R30, R31]>
{
let MethodProtos = [{
iterator allocation_order_begin(const MachineFunction &MF) const;
iterator allocation_order_end(const MachineFunction &MF) const;
}];
let MethodBodies = [{
DLXRegsClass::iterator
DLXRegsClass::allocation_order_end(const MachineFunction &MF) const {
return begin() + 1; // dont allocate r0, it always contains zero
}
DLXRegsClass::iterator
DLXRegsClass::allocation_order_end(const MachineFunction &MF) const {
return end() - 1; // d...