LLVM API Documentation

IA64TargetAsmInfo.cpp

Go to the documentation of this file.
00001 //===-- IA64TargetAsmInfo.cpp - IA64 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 contains the declarations of the IA64TargetAsmInfo properties.
00011 //
00012 //===----------------------------------------------------------------------===//
00013 
00014 #include "IA64TargetAsmInfo.h"
00015 
00016 using namespace llvm;
00017 
00018 IA64TargetAsmInfo::IA64TargetAsmInfo(const TargetMachine &TM):
00019   ELFTargetAsmInfo(TM) {
00020   CommentString = "//";
00021   Data8bitsDirective = "\tdata1\t";     // FIXME: check that we are
00022   Data16bitsDirective = "\tdata2.ua\t"; // disabling auto-alignment
00023   Data32bitsDirective = "\tdata4.ua\t"; // properly
00024   Data64bitsDirective = "\tdata8.ua\t";
00025   ZeroDirective = "\t.skip\t";
00026   AsciiDirective = "\tstring\t";
00027 
00028   GlobalVarAddrPrefix="";
00029   GlobalVarAddrSuffix="";
00030   FunctionAddrPrefix="@fptr(";
00031   FunctionAddrSuffix=")";
00032 
00033   // FIXME: would be nice to have rodata (no 'w') when appropriate?
00034   ConstantPoolSection = "\n\t.section .data, \"aw\", \"progbits\"\n";
00035 }
00036 
00037 // FIXME: Support small data/bss/rodata sections someday.