summaryrefslogtreecommitdiff
path: root/lib/Target/CellSPU
diff options
context:
space:
mode:
authorRoman Divacky <rdivacky@FreeBSD.org>2009-10-15 16:26:17 +0000
committerRoman Divacky <rdivacky@FreeBSD.org>2009-10-15 16:26:17 +0000
commit5cd822fa9bbb9622241e3bf4d7674ed49ccde5b9 (patch)
treefbc3e1401bc9623b861166be5940c750f5ca52da /lib/Target/CellSPU
parent26137f35958fa2237eceb06ef7003e3c19159129 (diff)
Notes
Diffstat (limited to 'lib/Target/CellSPU')
-rw-r--r--lib/Target/CellSPU/SPUTargetAsmInfo.cpp73
-rw-r--r--lib/Target/CellSPU/SPUTargetAsmInfo.h51
2 files changed, 0 insertions, 124 deletions
diff --git a/lib/Target/CellSPU/SPUTargetAsmInfo.cpp b/lib/Target/CellSPU/SPUTargetAsmInfo.cpp
deleted file mode 100644
index 2868ff7592c2..000000000000
--- a/lib/Target/CellSPU/SPUTargetAsmInfo.cpp
+++ /dev/null
@@ -1,73 +0,0 @@
-//===-- SPUTargetAsmInfo.cpp - Cell SPU asm properties ----------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file contains the declarations of the SPUTargetAsmInfo properties.
-//
-//===----------------------------------------------------------------------===//
-
-#include "SPUTargetAsmInfo.h"
-#include "SPUTargetMachine.h"
-#include "llvm/Function.h"
-#include "llvm/Support/Compiler.h"
-#include "llvm/Support/Dwarf.h"
-
-using namespace llvm;
-using namespace llvm::dwarf;
-
-SPULinuxTargetAsmInfo::SPULinuxTargetAsmInfo(const SPUTargetMachine &TM) :
- SPUTargetAsmInfo<ELFTargetAsmInfo>(TM) {
- PCSymbol = ".";
- CommentString = "#";
- GlobalPrefix = "";
- PrivateGlobalPrefix = ".L";
- // This corresponds to what the gcc SPU compiler emits, for consistency.
- CStringSection = ".rodata.str";
-
- // Has leb128, .loc and .file
- HasLEB128 = true;
- HasDotLocAndDotFile = true;
-
- // BSS section needs to be emitted as ".section"
- BSSSection = "\t.section\t.bss";
- BSSSection_ = getUnnamedSection("\t.section\t.bss",
- SectionFlags::Writeable | SectionFlags::BSS,
- true);
-
- SupportsDebugInformation = true;
- NeedsSet = true;
- DwarfAbbrevSection = "\t.section .debug_abbrev,\"\",@progbits";
- DwarfInfoSection = "\t.section .debug_info,\"\",@progbits";
- DwarfLineSection = "\t.section .debug_line,\"\",@progbits";
- DwarfFrameSection = "\t.section .debug_frame,\"\",@progbits";
- DwarfPubNamesSection = "\t.section .debug_pubnames,\"\",@progbits";
- DwarfPubTypesSection = "\t.section .debug_pubtypes,\"\",progbits";
- DwarfStrSection = "\t.section .debug_str,\"MS\",@progbits,1";
- DwarfLocSection = "\t.section .debug_loc,\"\",@progbits";
- DwarfARangesSection = "\t.section .debug_aranges,\"\",@progbits";
- DwarfRangesSection = "\t.section .debug_ranges,\"\",@progbits";
- DwarfMacroInfoSection = 0; // macro info not supported.
-
- // Exception handling is not supported on CellSPU (think about it: you only
- // have 256K for code+data. Would you support exception handling?)
- SupportsExceptionHandling = false;
-}
-
-/// PreferredEHDataFormat - This hook allows the target to select data
-/// format used for encoding pointers in exception handling data. Reason is
-/// 0 for data, 1 for code labels, 2 for function pointers. Global is true
-/// if the symbol can be relocated.
-unsigned
-SPULinuxTargetAsmInfo::PreferredEHDataFormat(DwarfEncoding::Target Reason,
- bool Global) const {
- // We really need to write something here.
- return TargetAsmInfo::PreferredEHDataFormat(Reason, Global);
-}
-
-// Instantiate default implementation.
-TEMPLATE_INSTANTIATION(class SPUTargetAsmInfo<TargetAsmInfo>);
diff --git a/lib/Target/CellSPU/SPUTargetAsmInfo.h b/lib/Target/CellSPU/SPUTargetAsmInfo.h
deleted file mode 100644
index d10a56540592..000000000000
--- a/lib/Target/CellSPU/SPUTargetAsmInfo.h
+++ /dev/null
@@ -1,51 +0,0 @@
-//===-- SPUTargetAsmInfo.h - Cell SPU asm properties -----------*- C++ -*--===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file contains the declaration of the SPUTargetAsmInfo class.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef SPUTARGETASMINFO_H
-#define SPUTARGETASMINFO_H
-
-#include "llvm/Target/TargetAsmInfo.h"
-#include "llvm/Target/ELFTargetAsmInfo.h"
-#include "SPUTargetMachine.h"
-#include "SPUSubtarget.h"
-
-namespace llvm {
-
- // Forward declaration.
- class SPUTargetMachine;
-
- template <class BaseTAI>
- struct SPUTargetAsmInfo : public BaseTAI {
- explicit SPUTargetAsmInfo(const SPUTargetMachine &TM):
- BaseTAI(TM) {
- /* (unused today)
- * const SPUSubtarget *Subtarget = &TM.getSubtarget<SPUSubtarget>(); */
-
- BaseTAI::ZeroDirective = "\t.space\t";
- BaseTAI::SetDirective = "\t.set";
- BaseTAI::Data64bitsDirective = "\t.quad\t";
- BaseTAI::AlignmentIsInBytes = false;
- BaseTAI::LCOMMDirective = "\t.lcomm\t";
- BaseTAI::InlineAsmStart = "# InlineAsm Start";
- BaseTAI::InlineAsmEnd = "# InlineAsm End";
- }
- };
-
- struct SPULinuxTargetAsmInfo : public SPUTargetAsmInfo<ELFTargetAsmInfo> {
- explicit SPULinuxTargetAsmInfo(const SPUTargetMachine &TM);
- virtual unsigned PreferredEHDataFormat(DwarfEncoding::Target Reason,
- bool Global) const;
- };
-} // namespace llvm
-
-#endif /* SPUTARGETASMINFO_H */