LLVM API Documentation

MCAsmInfoCOFF.cpp
Go to the documentation of this file.
00001 //===-- MCAsmInfoCOFF.cpp - COFF asm properties -----------------*- C++ -*-===//
00002 //
00003 //                     The LLVM Compiler Infrastructure
00004 //
00005 // This file is distributed under the University of Illinois Open Source
00006 // License. See LICENSE.TXT for details.
00007 //
00008 //===----------------------------------------------------------------------===//
00009 //
00010 // This file defines target asm properties related what form asm statements
00011 // should take in general on COFF-based targets
00012 //
00013 //===----------------------------------------------------------------------===//
00014 
00015 #include "llvm/MC/MCAsmInfoCOFF.h"
00016 using namespace llvm;
00017 
00018 void MCAsmInfoCOFF::anchor() { }
00019 
00020 MCAsmInfoCOFF::MCAsmInfoCOFF() {
00021   GlobalPrefix = "_";
00022   // MingW 4.5 and later support .comm with log2 alignment, but .lcomm uses byte
00023   // alignment.
00024   COMMDirectiveAlignmentIsInBytes = false;
00025   LCOMMDirectiveAlignmentType = LCOMM::ByteAlignment;
00026   HasDotTypeDotSizeDirective = false;
00027   HasSingleParameterDotFile = false;
00028   PrivateGlobalPrefix = "L";  // Prefix for private global symbols
00029   WeakRefDirective = "\t.weak\t";
00030   LinkOnceDirective = "\t.linkonce discard\n";
00031 
00032   // Doesn't support visibility:
00033   HiddenVisibilityAttr = HiddenDeclarationVisibilityAttr = MCSA_Invalid;
00034   ProtectedVisibilityAttr = MCSA_Invalid;
00035 
00036   // Set up DWARF directives
00037   HasLEB128 = true;  // Target asm supports leb128 directives (little-endian)
00038   SupportsDebugInformation = true;
00039   HasMicrosoftFastStdCallMangling = true;
00040   NeedsDwarfSectionOffsetDirective = true;
00041 }
00042 
00043 void MCAsmInfoMicrosoft::anchor() { }
00044 
00045 MCAsmInfoMicrosoft::MCAsmInfoMicrosoft() {
00046   AllowQuotesInName = true;
00047 }
00048 
00049 void MCAsmInfoGNUCOFF::anchor() { }
00050 
00051 MCAsmInfoGNUCOFF::MCAsmInfoGNUCOFF() {
00052 
00053 }