Pedro Malagón
2013-May-09 17:23 UTC
[LLVMdev] Backend calling convention: when pointer differs from integer
Hi, I am developing a backend for an architecture with two diferent sets of registers. The ABI specifies that pointer arguments use one kind of registers while integers use the other one. As LLVM translates pointers to the specified type (i32 in my case), I cannot specify the correct calling convention. I've seen that developing the TriCore backend the same issue appeared. In TriCore backend document they mention they solved this issue by annotating EVT, although no more detail is given and the backend is not available TriCore backend was developed in 2009, before LLVM2.6. Is there support for this in newer LLVM versions? Is there any example on how this was solved or any one faced this problem later? Can I use the CallingConvention.td or the compatibility is impossible? Thanks, Pedro Malagon -- Pedro Malagón - Profesor ayudante 91 549 57 00 - ext. 4220 Departamento de Ingeniería Electrónica Escuela Técnica Superior de Ingenieros de Telecomunicación Universidad Politécnica de Madrid