Juergen Zimmermann - Sun Microsystems - Walldorf Germany
2009-Dec-10 08:00 UTC
[LLVMdev] How to check for "SPARC code generation" in MachineBasicBlock.cpp?
Hi,
I'm almost finished to get a complete and seemingly working build of
LLVM-GCC (trunk) for SPARC (32-bit only, for now).
The only remaining problem is the code generation for one single
file (namely cp-demangle.c) where some labels are not put into
the assembler/object file due to some (until now) unknown
inconsistencies with 'isOnlyReachableByFallthrough' and
(most likely) the SPARC code generator.
For now, I'm looking for a way to determine within that function
if LLVM is supposed to generate code for SPARC and then
implement the logic that's needed.
Any 'quick' suggestions?
Regards,
Juergen
--
Sun Microsystems GmbH Juergen Zimmermann
Altrottstrasse 31 ISV Engineering EMEA, Technical Lead for SAP
69190 Walldorf Phone: +49 (0)6227 356 256
Germany Fax: +49 (0)6227 356 222
mailto:Juergen.Zimmermann at Sun.COM
Sun Microsystems GmbH
Altrottstrasse 31, 69190 Walldorf
Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Wolf Frenkel
Vorsitzender des Aufsichtsrates: Martin Haering
Chris Lattner
2009-Dec-10 23:54 UTC
[LLVMdev] How to check for "SPARC code generation" in MachineBasicBlock.cpp?
On Dec 10, 2009, at 12:00 AM, Juergen Zimmermann - Sun Microsystems - Walldorf Germany wrote:> Hi, > I'm almost finished to get a complete and seemingly working build of > LLVM-GCC (trunk) for SPARC (32-bit only, for now). > > The only remaining problem is the code generation for one single > file (namely cp-demangle.c) where some labels are not put into > the assembler/object file due to some (until now) unknown > inconsistencies with 'isOnlyReachableByFallthrough' and > (most likely) the SPARC code generator. > > For now, I'm looking for a way to determine within that function > if LLVM is supposed to generate code for SPARC and then > implement the logic that's needed.That is target independent code, so you should not put sparc specific changes there. It sounds like one of the sparc-specific target hooks is wrong. -Chris
Anton Korobeynikov
2009-Dec-11 00:43 UTC
[LLVMdev] How to check for "SPARC code generation" in MachineBasicBlock.cpp?
Hi, Chris> That is target independent code, so you should not put sparc specific changes there. It sounds like one of the sparc-specific target hooks is wrong.Since sparc does not provide any hooks for operation of branches (e.g. AnalyzeBranch and friends) it might be possible that generic codegen code is broken in absence of these hooks. -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Maybe Matching Threads
- [LLVMdev] llvm-gcc-4.2 RELEASE_26 bootstrap failure on Solaris/SPARC - unhandled REAL_TYPE during compilation of '__powitf2'
- [LLVMdev] llvm-gcc-4.2 RELEASE_26 bootstrap failure on Solaris/SPARC - unhandled REAL_TYPE during compilation of '__powitf2'
- [LLVMdev] llvm-gcc-4.2 RELEASE_26 bootstrap failure on Solaris/SPARC - unhandled REAL_TYPE during compilation of '__powitf2'
- failmode= continue prevents zpool processes from hanging and being unkillable?
- [LLVMdev] How to check for "SPARC code generation" in MachineBasicBlock.cpp?