Deleted Added
full compact
MCAsmInfoDarwin.cpp (263508) MCAsmInfoDarwin.cpp (266715)
1//===-- MCAsmInfoDarwin.cpp - Darwin 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 defines target asm properties related what form asm statements
11// should take in general on Darwin-based targets
12//
13//===----------------------------------------------------------------------===//
14
15#include "llvm/MC/MCAsmInfoDarwin.h"
16#include "llvm/MC/MCContext.h"
17#include "llvm/MC/MCExpr.h"
18#include "llvm/MC/MCStreamer.h"
19using namespace llvm;
20
21void MCAsmInfoDarwin::anchor() { }
22
23MCAsmInfoDarwin::MCAsmInfoDarwin() {
24 // Common settings for all Darwin targets.
25 // Syntax:
26 GlobalPrefix = "_";
27 PrivateGlobalPrefix = "L";
28 LinkerPrivateGlobalPrefix = "l";
29 HasSingleParameterDotFile = false;
30 HasSubsectionsViaSymbols = true;
31
32 AlignmentIsInBytes = false;
33 COMMDirectiveAlignmentIsInBytes = false;
34 LCOMMDirectiveAlignmentType = LCOMM::Log2Alignment;
35 InlineAsmStart = " InlineAsm Start";
36 InlineAsmEnd = " InlineAsm End";
37
38 // Directives:
1//===-- MCAsmInfoDarwin.cpp - Darwin 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 defines target asm properties related what form asm statements
11// should take in general on Darwin-based targets
12//
13//===----------------------------------------------------------------------===//
14
15#include "llvm/MC/MCAsmInfoDarwin.h"
16#include "llvm/MC/MCContext.h"
17#include "llvm/MC/MCExpr.h"
18#include "llvm/MC/MCStreamer.h"
19using namespace llvm;
20
21void MCAsmInfoDarwin::anchor() { }
22
23MCAsmInfoDarwin::MCAsmInfoDarwin() {
24 // Common settings for all Darwin targets.
25 // Syntax:
26 GlobalPrefix = "_";
27 PrivateGlobalPrefix = "L";
28 LinkerPrivateGlobalPrefix = "l";
29 HasSingleParameterDotFile = false;
30 HasSubsectionsViaSymbols = true;
31
32 AlignmentIsInBytes = false;
33 COMMDirectiveAlignmentIsInBytes = false;
34 LCOMMDirectiveAlignmentType = LCOMM::Log2Alignment;
35 InlineAsmStart = " InlineAsm Start";
36 InlineAsmEnd = " InlineAsm End";
37
38 // Directives:
39 WeakDefDirective = "\t.weak_definition ";
39 HasWeakDefDirective = true;
40 HasWeakDefCanBeHiddenDirective = true;
40 WeakRefDirective = "\t.weak_reference ";
41 ZeroDirective = "\t.space\t"; // ".space N" emits N zeros.
42 HasMachoZeroFillDirective = true; // Uses .zerofill
43 HasMachoTBSSDirective = true; // Uses .tbss
44 HasStaticCtorDtorReferenceInStaticMode = true;
45
46 // FIXME: Darwin 10 and newer don't need this.
47 LinkerRequiresNonEmptyDwarfLines = true;
48
49 // FIXME: Change this once MC is the system assembler.
50 HasAggressiveSymbolFolding = false;
51
52 HiddenVisibilityAttr = MCSA_PrivateExtern;
53 HiddenDeclarationVisibilityAttr = MCSA_Invalid;
54
55 // Doesn't support protected visibility.
56 ProtectedVisibilityAttr = MCSA_Invalid;
57
58 HasDotTypeDotSizeDirective = false;
59 HasNoDeadStrip = true;
60
61 DwarfUsesRelocationsAcrossSections = false;
62}
41 WeakRefDirective = "\t.weak_reference ";
42 ZeroDirective = "\t.space\t"; // ".space N" emits N zeros.
43 HasMachoZeroFillDirective = true; // Uses .zerofill
44 HasMachoTBSSDirective = true; // Uses .tbss
45 HasStaticCtorDtorReferenceInStaticMode = true;
46
47 // FIXME: Darwin 10 and newer don't need this.
48 LinkerRequiresNonEmptyDwarfLines = true;
49
50 // FIXME: Change this once MC is the system assembler.
51 HasAggressiveSymbolFolding = false;
52
53 HiddenVisibilityAttr = MCSA_PrivateExtern;
54 HiddenDeclarationVisibilityAttr = MCSA_Invalid;
55
56 // Doesn't support protected visibility.
57 ProtectedVisibilityAttr = MCSA_Invalid;
58
59 HasDotTypeDotSizeDirective = false;
60 HasNoDeadStrip = true;
61
62 DwarfUsesRelocationsAcrossSections = false;
63}