diff options
Diffstat (limited to 'contrib/llvm/lib/MC/MCAsmInfo.cpp')
| -rw-r--r-- | contrib/llvm/lib/MC/MCAsmInfo.cpp | 54 | 
1 files changed, 22 insertions, 32 deletions
diff --git a/contrib/llvm/lib/MC/MCAsmInfo.cpp b/contrib/llvm/lib/MC/MCAsmInfo.cpp index daf19e927c7a..f8081ef97d3f 100644 --- a/contrib/llvm/lib/MC/MCAsmInfo.cpp +++ b/contrib/llvm/lib/MC/MCAsmInfo.cpp @@ -37,12 +37,10 @@ MCAsmInfo::MCAsmInfo() {    MinInstAlignment = 1;    DollarIsPC = false;    SeparatorString = ";"; -  CommentColumn = 40;    CommentString = "#";    LabelSuffix = ":"; -  DebugLabelSuffix = ":"; -  GlobalPrefix = ""; -  PrivateGlobalPrefix = "."; +  UseAssignmentForEHBegin = false; +  PrivateGlobalPrefix = "L";    LinkerPrivateGlobalPrefix = "";    InlineAsmStart = "APP";    InlineAsmEnd = "NO_APP"; @@ -61,11 +59,10 @@ MCAsmInfo::MCAsmInfo() {    Data64bitsDirective = "\t.quad\t";    SunStyleELFSectionSwitchSyntax = false;    UsesELFSectionDirectiveForBSS = false; -  AlignDirective = "\t.align\t";    AlignmentIsInBytes = true;    TextAlignFillValue = 0; -  GPRel64Directive = 0; -  GPRel32Directive = 0; +  GPRel64Directive = nullptr; +  GPRel32Directive = nullptr;    GlobalDirective = "\t.globl\t";    HasSetDirective = true;    HasAggressiveSymbolFolding = true; @@ -75,7 +72,7 @@ MCAsmInfo::MCAsmInfo() {    HasSingleParameterDotFile = true;    HasIdentDirective = false;    HasNoDeadStrip = false; -  WeakRefDirective = 0; +  WeakRefDirective = nullptr;    HasWeakDefDirective = false;    HasWeakDefCanBeHiddenDirective = false;    HasLinkOnceDirective = false; @@ -85,38 +82,31 @@ MCAsmInfo::MCAsmInfo() {    HasLEB128 = false;    SupportsDebugInformation = false;    ExceptionsType = ExceptionHandling::None; +  WinEHEncodingType = WinEH::EncodingType::ET_Invalid;    DwarfUsesRelocationsAcrossSections = true;    DwarfFDESymbolsUseAbsDiff = false;    DwarfRegNumForCFI = false; -  HasMicrosoftFastStdCallMangling = false;    NeedsDwarfSectionOffsetDirective = false; -} - -MCAsmInfo::~MCAsmInfo() { -} +  UseParensForSymbolVariant = false; +  // FIXME: Clang's logic should be synced with the logic used to initialize +  //        this member and the two implementations should be merged. +  // For reference: +  // - Solaris always enables the integrated assembler by default +  //   - SparcELFMCAsmInfo and X86ELFMCAsmInfo are handling this case +  // - Windows always enables the integrated assembler by default +  //   - MCAsmInfoCOFF is handling this case, should it be MCAsmInfoMicrosoft? +  // - MachO targets always enables the integrated assembler by default +  //   - MCAsmInfoDarwin is handling this case +  // - Generic_GCC toolchains enable the integrated assembler on a per +  //   architecture basis. +  //   - The target subclasses for AArch64, ARM, and X86 handle these cases +  UseIntegratedAssembler = false; -unsigned MCAsmInfo::getULEB128Size(uint64_t Value) { -  unsigned Size = 0; -  do { -    Value >>= 7; -    Size += sizeof(int8_t); -  } while (Value); -  return Size; +  CompressDebugSections = false;  } -unsigned MCAsmInfo::getSLEB128Size(int64_t Value) { -  unsigned Size = 0; -  int Sign = Value >> (8 * sizeof(Value) - 1); -  bool IsMore; - -  do { -    unsigned Byte = Value & 0x7f; -    Value >>= 7; -    IsMore = Value != Sign || ((Byte ^ Sign) & 0x40) != 0; -    Size += sizeof(int8_t); -  } while (IsMore); -  return Size; +MCAsmInfo::~MCAsmInfo() {  }  const MCExpr *  | 
