blob: 66c25a84b4be2796666c2252557d2cc3ef0a691c [file] [log] [blame]
Scott Michel564427e2007-12-05 01:24:05 +00001//===-- SPUTargetAsmInfo.cpp - Cell SPU asm properties ----------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
Chris Lattner4ee451d2007-12-29 20:36:04 +00005// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
Scott Michel564427e2007-12-05 01:24:05 +00007//
8//===----------------------------------------------------------------------===//
9//
10// This file contains the declarations of the SPUTargetAsmInfo properties.
11//
12//===----------------------------------------------------------------------===//
13
14#include "SPUTargetAsmInfo.h"
Scott Michel564427e2007-12-05 01:24:05 +000015using namespace llvm;
16
Chris Lattner09e820b2009-08-02 04:44:33 +000017SPULinuxTargetAsmInfo::SPULinuxTargetAsmInfo() {
18 ZeroDirective = "\t.space\t";
19 SetDirective = "\t.set";
20 Data64bitsDirective = "\t.quad\t";
21 AlignmentIsInBytes = false;
22 LCOMMDirective = "\t.lcomm\t";
23 InlineAsmStart = "# InlineAsm Start";
24 InlineAsmEnd = "# InlineAsm End";
25
Scott Michel053c1da2008-01-29 02:16:57 +000026 PCSymbol = ".";
Scott Michel564427e2007-12-05 01:24:05 +000027 CommentString = "#";
28 GlobalPrefix = "";
29 PrivateGlobalPrefix = ".L";
Scott Michelf0569be2008-12-27 04:51:36 +000030
Scott Michel9de57a92009-01-26 22:33:37 +000031 // Has leb128, .loc and .file
32 HasLEB128 = true;
33 HasDotLocAndDotFile = true;
34
Scott Michel9de57a92009-01-26 22:33:37 +000035 SupportsDebugInformation = true;
36 NeedsSet = true;
Scott Michel9de57a92009-01-26 22:33:37 +000037 DwarfAbbrevSection = "\t.section .debug_abbrev,\"\",@progbits";
38 DwarfInfoSection = "\t.section .debug_info,\"\",@progbits";
39 DwarfLineSection = "\t.section .debug_line,\"\",@progbits";
40 DwarfFrameSection = "\t.section .debug_frame,\"\",@progbits";
41 DwarfPubNamesSection = "\t.section .debug_pubnames,\"\",@progbits";
42 DwarfPubTypesSection = "\t.section .debug_pubtypes,\"\",progbits";
43 DwarfStrSection = "\t.section .debug_str,\"MS\",@progbits,1";
44 DwarfLocSection = "\t.section .debug_loc,\"\",@progbits";
45 DwarfARangesSection = "\t.section .debug_aranges,\"\",@progbits";
46 DwarfRangesSection = "\t.section .debug_ranges,\"\",@progbits";
Chris Lattnerb839c3f2009-06-18 23:31:37 +000047 DwarfMacroInfoSection = 0; // macro info not supported.
Scott Michel9de57a92009-01-26 22:33:37 +000048
49 // Exception handling is not supported on CellSPU (think about it: you only
50 // have 256K for code+data. Would you support exception handling?)
51 SupportsExceptionHandling = false;
Scott Michel564427e2007-12-05 01:24:05 +000052}
Scott Micheld03eeaf2008-11-07 04:36:25 +000053