1af76e592c7f9deff0e55c13dbb4a34f07f1c7f64Chris Lattner//===-- SparcMCAsmInfo.cpp - Sparc asm properties -------------------------===// 28e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// 38e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// The LLVM Compiler Infrastructure 48e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// 54ee451de366474b9c228b4e5fa573795a715216dChris Lattner// This file is distributed under the University of Illinois Open Source 64ee451de366474b9c228b4e5fa573795a715216dChris Lattner// License. See LICENSE.TXT for details. 78e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// 88e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey//===----------------------------------------------------------------------===// 98e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// 10af76e592c7f9deff0e55c13dbb4a34f07f1c7f64Chris Lattner// This file contains the declarations of the SparcMCAsmInfo properties. 118e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey// 128e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey//===----------------------------------------------------------------------===// 138e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey 14af76e592c7f9deff0e55c13dbb4a34f07f1c7f64Chris Lattner#include "SparcMCAsmInfo.h" 151be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng#include "llvm/ADT/Triple.h" 161be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng 178e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskeyusing namespace llvm; 188e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey 192d24e2a396a1d211baaeedf32148a3b657240170David Blaikievoid SparcELFMCAsmInfo::anchor() { } 202d24e2a396a1d211baaeedf32148a3b657240170David Blaikie 2138e59891ee4417a9be2f8146ce0ba3269e38ac21Benjamin KramerSparcELFMCAsmInfo::SparcELFMCAsmInfo(const Target &T, StringRef TT) { 221be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng IsLittleEndian = false; 231be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng Triple TheTriple(TT); 241be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng if (TheTriple.getArch() == Triple::sparcv9) 251be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng PointerSize = 8; 261be0e271a07925b928ba89848934f1ea6f1854e2Evan Cheng 278e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey Data16bitsDirective = "\t.half\t"; 288e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey Data32bitsDirective = "\t.word\t"; 298e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey Data64bitsDirective = 0; // .xword is only supported by V9. 308e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey ZeroDirective = "\t.skip\t"; 318e8de8f7765a08ab3aa4f48b302cf19ccb9740e2Jim Laskey CommentString = "!"; 32930e4d96e8718abcb56212676c35e6f7ea0ab605Richard Pennington HasLEB128 = true; 33930e4d96e8718abcb56212676c35e6f7ea0ab605Richard Pennington SupportsDebugInformation = true; 345277b22687d3513dd29d5a9c8510cac740f933f6Chris Lattner 355277b22687d3513dd29d5a9c8510cac740f933f6Chris Lattner SunStyleELFSectionSwitchSyntax = true; 36eb2aa096bb8aba742b87a99d561185bb3f8863c5Venkatraman Govindaraju UsesELFSectionDirectiveForBSS = true; 37eb2aa096bb8aba742b87a99d561185bb3f8863c5Venkatraman Govindaraju 38eb2aa096bb8aba742b87a99d561185bb3f8863c5Venkatraman Govindaraju WeakRefDirective = "\t.weak\t"; 39eb2aa096bb8aba742b87a99d561185bb3f8863c5Venkatraman Govindaraju 40eb2aa096bb8aba742b87a99d561185bb3f8863c5Venkatraman Govindaraju PrivateGlobalPrefix = ".L"; 415b794b98cebbc3982b87780657e0d280c2bcdd04Anton Korobeynikov} 425b794b98cebbc3982b87780657e0d280c2bcdd04Anton Korobeynikov 435b794b98cebbc3982b87780657e0d280c2bcdd04Anton Korobeynikov 44