[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCTargetAsmInfo.cpp PPCTargetAsmInfo.h

Jim Laskey jlaskey at apple.com
Thu Sep 7 15:05:24 PDT 2006



Changes in directory llvm/lib/Target/PowerPC:

PPCTargetAsmInfo.cpp added (r1.1)
PPCTargetAsmInfo.h added (r1.1)
---
Log message:

Break out target asm info into separate files.


---
Diffs of the changes:  (+82 -0)

 PPCTargetAsmInfo.cpp |   51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 PPCTargetAsmInfo.h   |   31 +++++++++++++++++++++++++++++++
 2 files changed, 82 insertions(+)


Index: llvm/lib/Target/PowerPC/PPCTargetAsmInfo.cpp
diff -c /dev/null llvm/lib/Target/PowerPC/PPCTargetAsmInfo.cpp:1.1
*** /dev/null	Thu Sep  7 17:05:12 2006
--- llvm/lib/Target/PowerPC/PPCTargetAsmInfo.cpp	Thu Sep  7 17:05:02 2006
***************
*** 0 ****
--- 1,51 ----
+ //===-- PPCTargetAsmInfo.cpp - PPC asm properties ---------------*- C++ -*-===//
+ //
+ //                     The LLVM Compiler Infrastructure
+ //
+ // This file was developed by James M. Laskey and is distributed under the
+ // University of Illinois Open Source License. See LICENSE.TXT for details.
+ //
+ //===----------------------------------------------------------------------===//
+ //
+ // This file contains the declarations of the DarwinTargetAsmInfo properties.
+ //
+ //===----------------------------------------------------------------------===//
+ 
+ #include "PPCTargetAsmInfo.h"
+ #include "PPCTargetMachine.h"
+ 
+ using namespace llvm;
+ 
+ DarwinTargetAsmInfo::DarwinTargetAsmInfo(const PPCTargetMachine &TM) {
+   bool isPPC64 = TM.getSubtargetImpl()->isPPC64();
+ 
+   CommentString = ";";
+   GlobalPrefix = "_";
+   PrivateGlobalPrefix = "L";
+   ZeroDirective = "\t.space\t";
+   SetDirective = "\t.set";
+   Data64bitsDirective = isPPC64 ? ".quad\t" : 0;  
+   AlignmentIsInBytes = false;
+   ConstantPoolSection = "\t.const\t";
+   JumpTableDataSection = ".const";
+   JumpTableTextSection = "\t.text";
+   LCOMMDirective = "\t.lcomm\t";
+   StaticCtorsSection = ".mod_init_func";
+   StaticDtorsSection = ".mod_term_func";
+   InlineAsmStart = "# InlineAsm Start";
+   InlineAsmEnd = "# InlineAsm End";
+   
+   NeedsSet = true;
+   AddressSize = isPPC64 ? 8 : 4;
+   DwarfAbbrevSection = ".section __DWARF,__debug_abbrev";
+   DwarfInfoSection = ".section __DWARF,__debug_info";
+   DwarfLineSection = ".section __DWARF,__debug_line";
+   DwarfFrameSection = ".section __DWARF,__debug_frame";
+   DwarfPubNamesSection = ".section __DWARF,__debug_pubnames";
+   DwarfPubTypesSection = ".section __DWARF,__debug_pubtypes";
+   DwarfStrSection = ".section __DWARF,__debug_str";
+   DwarfLocSection = ".section __DWARF,__debug_loc";
+   DwarfARangesSection = ".section __DWARF,__debug_aranges";
+   DwarfRangesSection = ".section __DWARF,__debug_ranges";
+   DwarfMacInfoSection = ".section __DWARF,__debug_macinfo";
+ }


Index: llvm/lib/Target/PowerPC/PPCTargetAsmInfo.h
diff -c /dev/null llvm/lib/Target/PowerPC/PPCTargetAsmInfo.h:1.1
*** /dev/null	Thu Sep  7 17:05:24 2006
--- llvm/lib/Target/PowerPC/PPCTargetAsmInfo.h	Thu Sep  7 17:05:02 2006
***************
*** 0 ****
--- 1,31 ----
+ //=====-- PPCTargetAsmInfo.h - PPC asm properties -------------*- C++ -*--====//
+ //
+ //                     The LLVM Compiler Infrastructure
+ //
+ // This file was developed by James M. Laskey and is distributed under the
+ // University of Illinois Open Source License. See LICENSE.TXT for details.
+ //
+ //===----------------------------------------------------------------------===//
+ //
+ // This file contains the declaration of the DarwinTargetAsmInfo class.
+ //
+ //===----------------------------------------------------------------------===//
+ 
+ #ifndef PPCTARGETASMINFO_H
+ #define PPCTARGETASMINFO_H
+ 
+ #include "llvm/Target/TargetAsmInfo.h"
+ 
+ namespace llvm {
+ 
+   // Forward declaration.
+   class PPCTargetMachine;
+ 
+   struct DarwinTargetAsmInfo : public TargetAsmInfo {
+     DarwinTargetAsmInfo(const PPCTargetMachine &TM);
+   };
+ 
+ 
+ } // namespace llvm
+ 
+ #endif






More information about the llvm-commits mailing list