Chris Lattner | af76e59 | 2009-08-22 20:48:53 +0000 | [diff] [blame] | 1 | //===-- SPUMCAsmInfo.cpp - Cell SPU asm properties ------------------------===// |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 2 | // |
| 3 | // The LLVM Compiler Infrastructure |
| 4 | // |
Chris Lattner | 4ee451d | 2007-12-29 20:36:04 +0000 | [diff] [blame] | 5 | // This file is distributed under the University of Illinois Open Source |
| 6 | // License. See LICENSE.TXT for details. |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 7 | // |
| 8 | //===----------------------------------------------------------------------===// |
| 9 | // |
Chris Lattner | af76e59 | 2009-08-22 20:48:53 +0000 | [diff] [blame] | 10 | // This file contains the declarations of the SPUMCAsmInfo properties. |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 11 | // |
| 12 | //===----------------------------------------------------------------------===// |
| 13 | |
Chris Lattner | af76e59 | 2009-08-22 20:48:53 +0000 | [diff] [blame] | 14 | #include "SPUMCAsmInfo.h" |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 15 | using namespace llvm; |
| 16 | |
Chris Lattner | 8eeba35 | 2010-01-20 06:34:14 +0000 | [diff] [blame] | 17 | SPULinuxMCAsmInfo::SPULinuxMCAsmInfo(const Target &T, const StringRef &TT) { |
Chris Lattner | 09e820b | 2009-08-02 04:44:33 +0000 | [diff] [blame] | 18 | ZeroDirective = "\t.space\t"; |
Chris Lattner | 09e820b | 2009-08-02 04:44:33 +0000 | [diff] [blame] | 19 | Data64bitsDirective = "\t.quad\t"; |
| 20 | AlignmentIsInBytes = false; |
Chris Lattner | 09e820b | 2009-08-02 04:44:33 +0000 | [diff] [blame] | 21 | |
Scott Michel | 053c1da | 2008-01-29 02:16:57 +0000 | [diff] [blame] | 22 | PCSymbol = "."; |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 23 | CommentString = "#"; |
| 24 | GlobalPrefix = ""; |
| 25 | PrivateGlobalPrefix = ".L"; |
Scott Michel | f0569be | 2008-12-27 04:51:36 +0000 | [diff] [blame] | 26 | |
Scott Michel | 9de57a9 | 2009-01-26 22:33:37 +0000 | [diff] [blame] | 27 | // Has leb128, .loc and .file |
| 28 | HasLEB128 = true; |
| 29 | HasDotLocAndDotFile = true; |
| 30 | |
Scott Michel | 9de57a9 | 2009-01-26 22:33:37 +0000 | [diff] [blame] | 31 | SupportsDebugInformation = true; |
Scott Michel | 9de57a9 | 2009-01-26 22:33:37 +0000 | [diff] [blame] | 32 | |
| 33 | // Exception handling is not supported on CellSPU (think about it: you only |
| 34 | // have 256K for code+data. Would you support exception handling?) |
Jim Grosbach | 1b747ad | 2009-08-11 00:09:57 +0000 | [diff] [blame] | 35 | ExceptionsType = ExceptionHandling::None; |
Chris Lattner | ac834e7 | 2010-03-05 18:55:36 +0000 | [diff] [blame] | 36 | |
| 37 | // SPU assembly requires ".section" before ".bss" |
| 38 | UsesELFSectionDirectiveForBSS = true; |
Scott Michel | 564427e | 2007-12-05 01:24:05 +0000 | [diff] [blame] | 39 | } |
Scott Michel | d03eeaf | 2008-11-07 04:36:25 +0000 | [diff] [blame] | 40 | |