003 File Manager
Current Path:
/usr/src/contrib/llvm-project/llvm/lib/Target/PowerPC/MCTargetDesc
usr
/
src
/
contrib
/
llvm-project
/
llvm
/
lib
/
Target
/
PowerPC
/
MCTargetDesc
/
📁
..
📄
PPCAsmBackend.cpp
(9.2 KB)
📄
PPCELFObjectWriter.cpp
(15.05 KB)
📄
PPCELFStreamer.cpp
(4.59 KB)
📄
PPCELFStreamer.h
(1.92 KB)
📄
PPCFixupKinds.h
(1.71 KB)
📄
PPCInstPrinter.cpp
(18.91 KB)
📄
PPCInstPrinter.h
(3.83 KB)
📄
PPCMCAsmInfo.cpp
(1.95 KB)
📄
PPCMCAsmInfo.h
(1.08 KB)
📄
PPCMCCodeEmitter.cpp
(18.43 KB)
📄
PPCMCCodeEmitter.h
(5.77 KB)
📄
PPCMCExpr.cpp
(4.31 KB)
📄
PPCMCExpr.h
(2.47 KB)
📄
PPCMCTargetDesc.cpp
(11.95 KB)
📄
PPCMCTargetDesc.h
(7.14 KB)
📄
PPCPredicates.cpp
(3.47 KB)
📄
PPCPredicates.h
(3.08 KB)
📄
PPCXCOFFObjectWriter.cpp
(2.89 KB)
Editing: PPCMCAsmInfo.cpp
//===-- PPCMCAsmInfo.cpp - PPC asm properties -----------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file contains the declarations of the MCAsmInfoDarwin properties. // //===----------------------------------------------------------------------===// #include "PPCMCAsmInfo.h" #include "llvm/ADT/Triple.h" #include <cassert> using namespace llvm; void PPCELFMCAsmInfo::anchor() { } PPCELFMCAsmInfo::PPCELFMCAsmInfo(bool is64Bit, const Triple& T) { // FIXME: This is not always needed. For example, it is not needed in the // v2 abi. NeedsLocalForSize = true; if (is64Bit) { CodePointerSize = CalleeSaveStackSlotSize = 8; } IsLittleEndian = T.getArch() == Triple::ppc64le; // ".comm align is in bytes but .align is pow-2." AlignmentIsInBytes = false; CommentString = "#"; // Uses '.section' before '.bss' directive UsesELFSectionDirectiveForBSS = true; // Debug Information SupportsDebugInformation = true; DollarIsPC = true; // Set up DWARF directives MinInstAlignment = 4; // Exceptions handling ExceptionsType = ExceptionHandling::DwarfCFI; ZeroDirective = "\t.space\t"; Data64bitsDirective = is64Bit ? "\t.quad\t" : nullptr; AssemblerDialect = 1; // New-Style mnemonics. LCOMMDirectiveAlignmentType = LCOMM::ByteAlignment; } void PPCXCOFFMCAsmInfo::anchor() {} PPCXCOFFMCAsmInfo::PPCXCOFFMCAsmInfo(bool Is64Bit, const Triple &T) { if (T.getArch() == Triple::ppc64le) report_fatal_error("XCOFF is not supported for little-endian targets"); CodePointerSize = CalleeSaveStackSlotSize = Is64Bit ? 8 : 4; // A size of 8 is only supported by the assembler under 64-bit. Data64bitsDirective = Is64Bit ? "\t.vbyte\t8, " : nullptr; }
Upload File
Create Folder