forked from OSchip/llvm-project
				
			Remove HasLEB128.
We already require CFI, so it should be safe to require .leb128 and .uleb128. llvm-svn: 215712
This commit is contained in:
		
							parent
							
								
									9bac9ca796
								
							
						
					
					
						commit
						d610ba99cb
					
				| 
						 | 
				
			
			@ -295,9 +295,6 @@ protected:
 | 
			
		|||
 | 
			
		||||
  //===--- Dwarf Emission Directives -----------------------------------===//
 | 
			
		||||
 | 
			
		||||
  /// True if target asm supports leb128 directives.  Defaults to false.
 | 
			
		||||
  bool HasLEB128;
 | 
			
		||||
 | 
			
		||||
  /// True if target supports emission of debugging information.  Defaults to
 | 
			
		||||
  /// false.
 | 
			
		||||
  bool SupportsDebugInformation;
 | 
			
		||||
| 
						 | 
				
			
			@ -471,7 +468,6 @@ public:
 | 
			
		|||
  MCSymbolAttr getProtectedVisibilityAttr() const {
 | 
			
		||||
    return ProtectedVisibilityAttr;
 | 
			
		||||
  }
 | 
			
		||||
  bool hasLEB128() const { return HasLEB128; }
 | 
			
		||||
  bool doesSupportDebugInformation() const { return SupportsDebugInformation; }
 | 
			
		||||
  bool doesSupportExceptionHandling() const {
 | 
			
		||||
    return ExceptionsType != ExceptionHandling::None;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -79,7 +79,6 @@ MCAsmInfo::MCAsmInfo() {
 | 
			
		|||
  HiddenVisibilityAttr = MCSA_Hidden;
 | 
			
		||||
  HiddenDeclarationVisibilityAttr = MCSA_Hidden;
 | 
			
		||||
  ProtectedVisibilityAttr = MCSA_Protected;
 | 
			
		||||
  HasLEB128 = false;
 | 
			
		||||
  SupportsDebugInformation = false;
 | 
			
		||||
  ExceptionsType = ExceptionHandling::None;
 | 
			
		||||
  WinEHEncodingType = WinEH::EncodingType::ET_Invalid;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -32,7 +32,6 @@ MCAsmInfoCOFF::MCAsmInfoCOFF() {
 | 
			
		|||
  ProtectedVisibilityAttr = MCSA_Invalid;
 | 
			
		||||
 | 
			
		||||
  // Set up DWARF directives
 | 
			
		||||
  HasLEB128 = true;  // Target asm supports leb128 directives (little-endian)
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
  NeedsDwarfSectionOffsetDirective = true;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -700,7 +700,6 @@ void MCAsmStreamer::EmitULEB128Value(const MCExpr *Value) {
 | 
			
		|||
    EmitULEB128IntValue(IntValue);
 | 
			
		||||
    return;
 | 
			
		||||
  }
 | 
			
		||||
  assert(MAI->hasLEB128() && "Cannot print a .uleb");
 | 
			
		||||
  OS << ".uleb128 " << *Value;
 | 
			
		||||
  EmitEOL();
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -711,7 +710,6 @@ void MCAsmStreamer::EmitSLEB128Value(const MCExpr *Value) {
 | 
			
		|||
    EmitSLEB128IntValue(IntValue);
 | 
			
		||||
    return;
 | 
			
		||||
  }
 | 
			
		||||
  assert(MAI->hasLEB128() && "Cannot print a .sleb");
 | 
			
		||||
  OS << ".sleb128 " << *Value;
 | 
			
		||||
  EmitEOL();
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -89,7 +89,6 @@ AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(StringRef TT) {
 | 
			
		|||
 | 
			
		||||
  WeakRefDirective = "\t.weak\t";
 | 
			
		||||
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
 | 
			
		||||
  // Exceptions handling
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,7 +55,6 @@ ARMELFMCAsmInfo::ARMELFMCAsmInfo(StringRef TT) {
 | 
			
		|||
  Code16Directive = ".code\t16";
 | 
			
		||||
  Code32Directive = ".code\t32";
 | 
			
		||||
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
 | 
			
		||||
  // Exceptions handling
 | 
			
		||||
| 
						 | 
				
			
			@ -103,7 +102,6 @@ ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU() {
 | 
			
		|||
  Code32Directive = ".code\t32";
 | 
			
		||||
  PrivateGlobalPrefix = ".L";
 | 
			
		||||
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
  ExceptionsType = ExceptionHandling::None;
 | 
			
		||||
  UseParensForSymbolVariant = true;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,7 +24,6 @@ HexagonMCAsmInfo::HexagonMCAsmInfo(StringRef TT) {
 | 
			
		|||
  Data64bitsDirective = nullptr;  // .xword is only supported by V9.
 | 
			
		||||
  ZeroDirective = "\t.skip\t";
 | 
			
		||||
  CommentString = "//";
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
 | 
			
		||||
  LCOMMDirectiveAlignmentType = LCOMM::ByteAlignment;
 | 
			
		||||
  InlineAsmStart = "# InlineAsm Start";
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -41,6 +41,5 @@ MipsMCAsmInfo::MipsMCAsmInfo(StringRef TT) {
 | 
			
		|||
  UseAssignmentForEHBegin = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
  ExceptionsType = ExceptionHandling::DwarfCFI;
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  DwarfRegNumForCFI = true;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -64,7 +64,6 @@ PPCELFMCAsmInfo::PPCELFMCAsmInfo(bool is64Bit, const Triple& T) {
 | 
			
		|||
  DollarIsPC = true;
 | 
			
		||||
 | 
			
		||||
  // Set up DWARF directives
 | 
			
		||||
  HasLEB128 = true;  // Target asm supports leb128 directives (little-endian)
 | 
			
		||||
  MinInstAlignment = 4;
 | 
			
		||||
 | 
			
		||||
  // Exceptions handling
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -52,7 +52,6 @@ AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(StringRef &TT) : MCAsmInfo() {
 | 
			
		|||
  HasNoDeadStrip = true;
 | 
			
		||||
  WeakRefDirective = ".weakref\t";
 | 
			
		||||
  //===--- Dwarf Emission Directives -----------------------------------===//
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,7 +35,6 @@ SparcELFMCAsmInfo::SparcELFMCAsmInfo(StringRef TT) {
 | 
			
		|||
  Data64bitsDirective = (isV9) ? "\t.xword\t" : nullptr;
 | 
			
		||||
  ZeroDirective = "\t.skip\t";
 | 
			
		||||
  CommentString = "!";
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
 | 
			
		||||
  ExceptionsType = ExceptionHandling::DwarfCFI;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,7 +23,6 @@ SystemZMCAsmInfo::SystemZMCAsmInfo(StringRef TT) {
 | 
			
		|||
  Data64bitsDirective = "\t.quad\t";
 | 
			
		||||
  UsesELFSectionDirectiveForBSS = true;
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  ExceptionsType = ExceptionHandling::DwarfCFI;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -102,9 +102,6 @@ X86ELFMCAsmInfo::X86ELFMCAsmInfo(const Triple &T) {
 | 
			
		|||
 | 
			
		||||
  TextAlignFillValue = 0x90;
 | 
			
		||||
 | 
			
		||||
  // Set up DWARF directives
 | 
			
		||||
  HasLEB128 = true;  // Target asm supports leb128 directives (little-endian)
 | 
			
		||||
 | 
			
		||||
  // Debug Information
 | 
			
		||||
  SupportsDebugInformation = true;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -28,7 +28,6 @@ XCoreMCAsmInfo::XCoreMCAsmInfo(StringRef TT) {
 | 
			
		|||
  ProtectedVisibilityAttr = MCSA_Invalid;
 | 
			
		||||
 | 
			
		||||
  // Debug
 | 
			
		||||
  HasLEB128 = true;
 | 
			
		||||
  ExceptionsType = ExceptionHandling::DwarfCFI;
 | 
			
		||||
  DwarfRegNumForCFI = true;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
// RUN: llvm-mc -triple=x86_64-apple-darwin %s | FileCheck %s
 | 
			
		||||
 | 
			
		||||
a:
 | 
			
		||||
b:
 | 
			
		||||
        .uleb128 a-b
 | 
			
		||||
 | 
			
		||||
// CHECK:        .uleb128 a-b
 | 
			
		||||
		Loading…
	
		Reference in New Issue