remove a pointless override.
[oota-llvm.git] / lib / Target / CellSPU / SPUTargetAsmInfo.cpp
1 //===-- SPUTargetAsmInfo.cpp - Cell SPU asm properties ----------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file contains the declarations of the SPUTargetAsmInfo properties.
11 //
12 //===----------------------------------------------------------------------===//
13
14 #include "SPUTargetAsmInfo.h"
15 #include "SPUTargetMachine.h"
16 #include "llvm/Function.h"
17 #include "llvm/Support/Compiler.h"
18 #include "llvm/Support/Dwarf.h"
19
20 using namespace llvm;
21 using namespace llvm::dwarf;
22
23 SPULinuxTargetAsmInfo::SPULinuxTargetAsmInfo(const SPUTargetMachine &TM) :
24     SPUTargetAsmInfo<ELFTargetAsmInfo>(TM) {
25   PCSymbol = ".";
26   CommentString = "#";
27   GlobalPrefix = "";
28   PrivateGlobalPrefix = ".L";
29   // This corresponds to what the gcc SPU compiler emits, for consistency.
30   CStringSection = ".rodata.str";
31
32   // Has leb128, .loc and .file
33   HasLEB128 = true;
34   HasDotLocAndDotFile = true;
35
36   SupportsDebugInformation = true;
37   NeedsSet = true;
38   DwarfAbbrevSection =  "\t.section        .debug_abbrev,\"\",@progbits";
39   DwarfInfoSection =    "\t.section        .debug_info,\"\",@progbits";
40   DwarfLineSection =    "\t.section        .debug_line,\"\",@progbits";
41   DwarfFrameSection =   "\t.section        .debug_frame,\"\",@progbits";
42   DwarfPubNamesSection = "\t.section        .debug_pubnames,\"\",@progbits";
43   DwarfPubTypesSection = "\t.section        .debug_pubtypes,\"\",progbits";
44   DwarfStrSection =     "\t.section        .debug_str,\"MS\",@progbits,1";
45   DwarfLocSection =     "\t.section        .debug_loc,\"\",@progbits";
46   DwarfARangesSection = "\t.section        .debug_aranges,\"\",@progbits";
47   DwarfRangesSection =  "\t.section        .debug_ranges,\"\",@progbits";
48   DwarfMacroInfoSection = 0;  // macro info not supported.
49
50   // Exception handling is not supported on CellSPU (think about it: you only
51   // have 256K for code+data. Would you support exception handling?)
52   SupportsExceptionHandling = false;
53 }
54
55
56 // Instantiate default implementation.
57 TEMPLATE_INSTANTIATION(class SPUTargetAsmInfo<TargetAsmInfo>);