1 //===-- Nios2MCAsmInfo.cpp - Nios2 Asm Properties -------------------------===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file contains the declarations of the Nios2MCAsmInfo properties.
12 //===----------------------------------------------------------------------===//
14 #include "Nios2MCAsmInfo.h"
16 #include "llvm/ADT/Triple.h"
20 void Nios2MCAsmInfo::anchor() {}
22 Nios2MCAsmInfo::Nios2MCAsmInfo(const Triple &TheTriple) {
23 if ((TheTriple.getArch() == Triple::nios2))
24 IsLittleEndian = true; // the default of IsLittleEndian is true
26 AlignmentIsInBytes = false;
27 Data16bitsDirective = "\t.2byte\t";
28 Data32bitsDirective = "\t.4byte\t";
29 Data64bitsDirective = "\t.8byte\t";
30 PrivateLabelPrefix = ".LC";
32 ZeroDirective = "\t.space\t";
33 GPRel32Directive = "\t.gpword\t";
34 GPRel64Directive = "\t.gpdword\t";
35 WeakRefDirective = "\t.weak\t";
36 GlobalDirective = "\t.global\t";
37 AscizDirective = "\t.string\t";
38 UseAssignmentForEHBegin = true;
40 SupportsDebugInformation = true;
41 ExceptionsType = ExceptionHandling::DwarfCFI;
42 DwarfRegNumForCFI = true;
43 UsesELFSectionDirectiveForBSS = true;