[LLVMbugs] [Bug 14011] New: tblgen support for ptr_rc / PointerLikeRegClass incomplete for gen-asm-matcher support

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Oct 3 15:20:48 PDT 2012


http://llvm.org/bugs/show_bug.cgi?id=14011

             Bug #: 14011
           Summary: tblgen support for ptr_rc / PointerLikeRegClass
                    incomplete for gen-asm-matcher support
           Product: new-bugs
           Version: trunk
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: will_schmidt at vnet.ibm.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


Against LLVM trunk sources (03 Oct 2012), and after application of two patches
to get past some easy cosmetic issues 
(
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121001/152389.html
)
(
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121001/152390.html
)
running llvm-tblgen against PPC.td with -gen-asm-matcher complains about ptr_rc
not deriving from class Operand. 

$  ./build/bin/llvm-tblgen llvm/lib/Target/PowerPC/PPC.td -I
~/llvm-head/llvm/include -I ~/llvm-head/llvm/lib/Target/PowerPC/
-gen-asm-matcher

<...>

Included from llvm/lib/Target/PowerPC/PPC.td:16:
/home/willschm/llvm-head/llvm/include/llvm/Target/Target.td:494:1:
error: Operand `ptr_rc' does not derive from class Operand!

def ptr_rc : PointerLikeRegClass<0>;
^

Per comments in Target.td, it seems like this should be handled as a special
case within tablegen.
/// PointerLikeRegClass -  ...   TableGen treats the register class as having a
symbolic
/// type that it doesn't know, and resolves the actual regclass to use by using
/// the TargetRegisterInfo::getPointerRegClass() hook at codegen time.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list