blob: 66c25a84b4be2796666c2252557d2cc3ef0a691c [file] [log] [blame]
Scott Michel5c93da42007-12-05 01:24:05 +00001//===-- SPUTargetAsmInfo.cpp - Cell SPU asm properties ----------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
Chris Lattner081ce942007-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 Michel5c93da42007-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 Michel5c93da42007-12-05 01:24:05 +000015using namespace llvm;
16
Chris Lattnerccab6f72009-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 Michelf9f42e62008-01-29 02:16:57 +000026 PCSymbol = ".";
Scott Michel5c93da42007-12-05 01:24:05 +000027 CommentString = "#";
28 GlobalPrefix = "";
29 PrivateGlobalPrefix = ".L";
Scott Michel06eabde2008-12-27 04:51:36 +000030
Scott Michelc899a122009-01-26 22:33:37 +000031 // Has leb128, .loc and .file
32 HasLEB128 = true;
33 HasDotLocAndDotFile = true;
34
Scott Michelc899a122009-01-26 22:33:37 +000035 SupportsDebugInformation = true;
36 NeedsSet = true;
Scott Michelc899a122009-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 Lattnerecbf73b2009-06-18 23:31:37 +000047 DwarfMacroInfoSection = 0; // macro info not supported.
Scott Michelc899a122009-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 Michel5c93da42007-12-05 01:24:05 +000052}
Scott Michel1e5a4ba2008-11-07 04:36:25 +000053