Skip to content

Commit 02f67c0

Browse files
Use llvm::endianness::{big,little,native} (NFC)
Note that llvm::support::endianness has been renamed to llvm::endianness while becoming an enum class. This patch replaces {big,little,native} with llvm::endianness::{big,little,native}. This patch completes the migration to llvm::endianness and llvm::endianness::{big,little,native}. I'll post a separate patch to remove the migration helpers in llvm/Support/Endian.h: using endianness = llvm::endianness; constexpr llvm::endianness big = llvm::endianness::big; constexpr llvm::endianness little = llvm::endianness::little; constexpr llvm::endianness native = llvm::endianness::native;
1 parent 5143818 commit 02f67c0

26 files changed

+409
-254
lines changed

clang/lib/CodeGen/CodeGenPGO.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -755,7 +755,8 @@ void PGOHash::combine(HashType Type) {
755755
// Pass through MD5 if enough work has built up.
756756
if (Count && Count % NumTypesPerWord == 0) {
757757
using namespace llvm::support;
758-
uint64_t Swapped = endian::byte_swap<uint64_t, little>(Working);
758+
uint64_t Swapped =
759+
endian::byte_swap<uint64_t, llvm::endianness::little>(Working);
759760
MD5.update(llvm::ArrayRef((uint8_t *)&Swapped, sizeof(Swapped)));
760761
Working = 0;
761762
}
@@ -781,7 +782,8 @@ uint64_t PGOHash::finalize() {
781782
MD5.update({(uint8_t)Working});
782783
} else {
783784
using namespace llvm::support;
784-
uint64_t Swapped = endian::byte_swap<uint64_t, little>(Working);
785+
uint64_t Swapped =
786+
endian::byte_swap<uint64_t, llvm::endianness::little>(Working);
785787
MD5.update(llvm::ArrayRef((uint8_t *)&Swapped, sizeof(Swapped)));
786788
}
787789
}

clang/lib/Serialization/ASTReader.cpp

Lines changed: 54 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -912,9 +912,10 @@ ASTSelectorLookupTrait::ReadKey(const unsigned char* d, unsigned) {
912912
using namespace llvm::support;
913913

914914
SelectorTable &SelTable = Reader.getContext().Selectors;
915-
unsigned N = endian::readNext<uint16_t, little, unaligned>(d);
915+
unsigned N =
916+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(d);
916917
IdentifierInfo *FirstII = Reader.getLocalIdentifier(
917-
F, endian::readNext<uint32_t, little, unaligned>(d));
918+
F, endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d));
918919
if (N == 0)
919920
return SelTable.getNullarySelector(FirstII);
920921
else if (N == 1)
@@ -924,7 +925,7 @@ ASTSelectorLookupTrait::ReadKey(const unsigned char* d, unsigned) {
924925
Args.push_back(FirstII);
925926
for (unsigned I = 1; I != N; ++I)
926927
Args.push_back(Reader.getLocalIdentifier(
927-
F, endian::readNext<uint32_t, little, unaligned>(d)));
928+
F, endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d)));
928929

929930
return SelTable.getSelector(N, Args.data());
930931
}
@@ -937,9 +938,11 @@ ASTSelectorLookupTrait::ReadData(Selector, const unsigned char* d,
937938
data_type Result;
938939

939940
Result.ID = Reader.getGlobalSelectorID(
940-
F, endian::readNext<uint32_t, little, unaligned>(d));
941-
unsigned FullInstanceBits = endian::readNext<uint16_t, little, unaligned>(d);
942-
unsigned FullFactoryBits = endian::readNext<uint16_t, little, unaligned>(d);
941+
F, endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d));
942+
unsigned FullInstanceBits =
943+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(d);
944+
unsigned FullFactoryBits =
945+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(d);
943946
Result.InstanceBits = FullInstanceBits & 0x3;
944947
Result.InstanceHasMoreThanOneDecl = (FullInstanceBits >> 2) & 0x1;
945948
Result.FactoryBits = FullFactoryBits & 0x3;
@@ -950,14 +953,16 @@ ASTSelectorLookupTrait::ReadData(Selector, const unsigned char* d,
950953
// Load instance methods
951954
for (unsigned I = 0; I != NumInstanceMethods; ++I) {
952955
if (ObjCMethodDecl *Method = Reader.GetLocalDeclAs<ObjCMethodDecl>(
953-
F, endian::readNext<uint32_t, little, unaligned>(d)))
956+
F,
957+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d)))
954958
Result.Instance.push_back(Method);
955959
}
956960

957961
// Load factory methods
958962
for (unsigned I = 0; I != NumFactoryMethods; ++I) {
959963
if (ObjCMethodDecl *Method = Reader.GetLocalDeclAs<ObjCMethodDecl>(
960-
F, endian::readNext<uint32_t, little, unaligned>(d)))
964+
F,
965+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d)))
961966
Result.Factory.push_back(Method);
962967
}
963968

@@ -998,7 +1003,8 @@ static bool readBit(unsigned &Bits) {
9981003
IdentID ASTIdentifierLookupTrait::ReadIdentifierID(const unsigned char *d) {
9991004
using namespace llvm::support;
10001005

1001-
unsigned RawID = endian::readNext<uint32_t, little, unaligned>(d);
1006+
unsigned RawID =
1007+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
10021008
return Reader.getGlobalIdentifierID(F, RawID >> 1);
10031009
}
10041010

@@ -1016,7 +1022,8 @@ IdentifierInfo *ASTIdentifierLookupTrait::ReadData(const internal_key_type& k,
10161022
unsigned DataLen) {
10171023
using namespace llvm::support;
10181024

1019-
unsigned RawID = endian::readNext<uint32_t, little, unaligned>(d);
1025+
unsigned RawID =
1026+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
10201027
bool IsInteresting = RawID & 0x01;
10211028

10221029
// Wipe out the "is interesting" bit.
@@ -1039,8 +1046,10 @@ IdentifierInfo *ASTIdentifierLookupTrait::ReadData(const internal_key_type& k,
10391046
return II;
10401047
}
10411048

1042-
unsigned ObjCOrBuiltinID = endian::readNext<uint16_t, little, unaligned>(d);
1043-
unsigned Bits = endian::readNext<uint16_t, little, unaligned>(d);
1049+
unsigned ObjCOrBuiltinID =
1050+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(d);
1051+
unsigned Bits =
1052+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(d);
10441053
bool CPlusPlusOperatorKeyword = readBit(Bits);
10451054
bool HasRevertedTokenIDToIdentifier = readBit(Bits);
10461055
bool Poisoned = readBit(Bits);
@@ -1069,7 +1078,7 @@ IdentifierInfo *ASTIdentifierLookupTrait::ReadData(const internal_key_type& k,
10691078
// definition.
10701079
if (HadMacroDefinition) {
10711080
uint32_t MacroDirectivesOffset =
1072-
endian::readNext<uint32_t, little, unaligned>(d);
1081+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
10731082
DataLen -= 4;
10741083

10751084
Reader.addPendingMacro(II, &F, MacroDirectivesOffset);
@@ -1083,7 +1092,8 @@ IdentifierInfo *ASTIdentifierLookupTrait::ReadData(const internal_key_type& k,
10831092
SmallVector<uint32_t, 4> DeclIDs;
10841093
for (; DataLen > 0; DataLen -= 4)
10851094
DeclIDs.push_back(Reader.getGlobalDeclID(
1086-
F, endian::readNext<uint32_t, little, unaligned>(d)));
1095+
F,
1096+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d)));
10871097
Reader.SetGloballyVisibleDecls(II, DeclIDs);
10881098
}
10891099

@@ -1152,7 +1162,8 @@ ModuleFile *
11521162
ASTDeclContextNameLookupTrait::ReadFileRef(const unsigned char *&d) {
11531163
using namespace llvm::support;
11541164

1155-
uint32_t ModuleFileID = endian::readNext<uint32_t, little, unaligned>(d);
1165+
uint32_t ModuleFileID =
1166+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
11561167
return Reader.getLocalModuleFile(F, ModuleFileID);
11571168
}
11581169

@@ -1172,15 +1183,18 @@ ASTDeclContextNameLookupTrait::ReadKey(const unsigned char *d, unsigned) {
11721183
case DeclarationName::CXXLiteralOperatorName:
11731184
case DeclarationName::CXXDeductionGuideName:
11741185
Data = (uint64_t)Reader.getLocalIdentifier(
1175-
F, endian::readNext<uint32_t, little, unaligned>(d));
1186+
F, endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d));
11761187
break;
11771188
case DeclarationName::ObjCZeroArgSelector:
11781189
case DeclarationName::ObjCOneArgSelector:
11791190
case DeclarationName::ObjCMultiArgSelector:
11801191
Data =
1181-
(uint64_t)Reader.getLocalSelector(
1182-
F, endian::readNext<uint32_t, little, unaligned>(
1183-
d)).getAsOpaquePtr();
1192+
(uint64_t)Reader
1193+
.getLocalSelector(
1194+
F,
1195+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(
1196+
d))
1197+
.getAsOpaquePtr();
11841198
break;
11851199
case DeclarationName::CXXOperatorName:
11861200
Data = *d++; // OverloadedOperatorKind
@@ -1203,7 +1217,8 @@ void ASTDeclContextNameLookupTrait::ReadDataInto(internal_key_type,
12031217
using namespace llvm::support;
12041218

12051219
for (unsigned NumDecls = DataLen / 4; NumDecls; --NumDecls) {
1206-
uint32_t LocalID = endian::readNext<uint32_t, little, unaligned>(d);
1220+
uint32_t LocalID =
1221+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
12071222
Val.insert(Reader.getGlobalDeclID(F, LocalID));
12081223
}
12091224
}
@@ -2010,8 +2025,10 @@ HeaderFileInfoTrait::ReadKey(const unsigned char *d, unsigned) {
20102025
using namespace llvm::support;
20112026

20122027
internal_key_type ikey;
2013-
ikey.Size = off_t(endian::readNext<uint64_t, little, unaligned>(d));
2014-
ikey.ModTime = time_t(endian::readNext<uint64_t, little, unaligned>(d));
2028+
ikey.Size =
2029+
off_t(endian::readNext<uint64_t, llvm::endianness::little, unaligned>(d));
2030+
ikey.ModTime = time_t(
2031+
endian::readNext<uint64_t, llvm::endianness::little, unaligned>(d));
20152032
ikey.Filename = (const char *)d;
20162033
ikey.Imported = true;
20172034
return ikey;
@@ -2039,9 +2056,9 @@ HeaderFileInfoTrait::ReadData(internal_key_ref key, const unsigned char *d,
20392056
HFI.DirInfo = (Flags >> 1) & 0x07;
20402057
HFI.IndexHeaderMapHeader = Flags & 0x01;
20412058
HFI.ControllingMacroID = Reader.getGlobalIdentifierID(
2042-
M, endian::readNext<uint32_t, little, unaligned>(d));
2059+
M, endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d));
20432060
if (unsigned FrameworkOffset =
2044-
endian::readNext<uint32_t, little, unaligned>(d)) {
2061+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d)) {
20452062
// The framework offset is 1 greater than the actual offset,
20462063
// since 0 is used as an indicator for "no framework name".
20472064
StringRef FrameworkName(FrameworkStrings + FrameworkOffset - 1);
@@ -2051,7 +2068,8 @@ HeaderFileInfoTrait::ReadData(internal_key_ref key, const unsigned char *d,
20512068
assert((End - d) % 4 == 0 &&
20522069
"Wrong data length in HeaderFileInfo deserialization");
20532070
while (d != End) {
2054-
uint32_t LocalSMID = endian::readNext<uint32_t, little, unaligned>(d);
2071+
uint32_t LocalSMID =
2072+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(d);
20552073
auto HeaderRole = static_cast<ModuleMap::ModuleHeaderRole>(LocalSMID & 7);
20562074
LocalSMID >>= 3;
20572075

@@ -4030,8 +4048,9 @@ void ASTReader::ReadModuleOffsetMap(ModuleFile &F) const {
40304048
// how it goes...
40314049
using namespace llvm::support;
40324050
ModuleKind Kind = static_cast<ModuleKind>(
4033-
endian::readNext<uint8_t, little, unaligned>(Data));
4034-
uint16_t Len = endian::readNext<uint16_t, little, unaligned>(Data);
4051+
endian::readNext<uint8_t, llvm::endianness::little, unaligned>(Data));
4052+
uint16_t Len =
4053+
endian::readNext<uint16_t, llvm::endianness::little, unaligned>(Data);
40354054
StringRef Name = StringRef((const char*)Data, Len);
40364055
Data += Len;
40374056
ModuleFile *OM = (Kind == MK_PrebuiltModule || Kind == MK_ExplicitModule ||
@@ -4047,21 +4066,21 @@ void ASTReader::ReadModuleOffsetMap(ModuleFile &F) const {
40474066
}
40484067

40494068
SourceLocation::UIntTy SLocOffset =
4050-
endian::readNext<uint32_t, little, unaligned>(Data);
4069+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40514070
uint32_t IdentifierIDOffset =
4052-
endian::readNext<uint32_t, little, unaligned>(Data);
4071+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40534072
uint32_t MacroIDOffset =
4054-
endian::readNext<uint32_t, little, unaligned>(Data);
4073+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40554074
uint32_t PreprocessedEntityIDOffset =
4056-
endian::readNext<uint32_t, little, unaligned>(Data);
4075+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40574076
uint32_t SubmoduleIDOffset =
4058-
endian::readNext<uint32_t, little, unaligned>(Data);
4077+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40594078
uint32_t SelectorIDOffset =
4060-
endian::readNext<uint32_t, little, unaligned>(Data);
4079+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40614080
uint32_t DeclIDOffset =
4062-
endian::readNext<uint32_t, little, unaligned>(Data);
4081+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40634082
uint32_t TypeIndexOffset =
4064-
endian::readNext<uint32_t, little, unaligned>(Data);
4083+
endian::readNext<uint32_t, llvm::endianness::little, unaligned>(Data);
40654084

40664085
auto mapOffset = [&](uint32_t Offset, uint32_t BaseOffset,
40674086
RemapBuilder &Remap) {

clang/lib/Serialization/ASTWriter.cpp

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1873,7 +1873,7 @@ namespace {
18731873
void EmitKey(raw_ostream& Out, key_type_ref key, unsigned KeyLen) {
18741874
using namespace llvm::support;
18751875

1876-
endian::Writer LE(Out, little);
1876+
endian::Writer LE(Out, llvm::endianness::little);
18771877
LE.write<uint64_t>(key.Size);
18781878
KeyLen -= 8;
18791879
LE.write<uint64_t>(key.ModTime);
@@ -1885,7 +1885,7 @@ namespace {
18851885
data_type_ref Data, unsigned DataLen) {
18861886
using namespace llvm::support;
18871887

1888-
endian::Writer LE(Out, little);
1888+
endian::Writer LE(Out, llvm::endianness::little);
18891889
uint64_t Start = Out.tell(); (void)Start;
18901890

18911891
unsigned char Flags = (Data.AlreadyIncluded << 6)
@@ -2053,7 +2053,7 @@ void ASTWriter::WriteHeaderSearch(const HeaderSearch &HS) {
20532053

20542054
llvm::raw_svector_ostream Out(TableData);
20552055
// Make sure that no bucket is at offset 0
2056-
endian::write<uint32_t>(Out, 0, little);
2056+
endian::write<uint32_t>(Out, 0, llvm::endianness::little);
20572057
BucketOffset = Generator.Emit(Out, GeneratorTrait);
20582058
}
20592059

@@ -3313,7 +3313,7 @@ class ASTMethodPoolTrait {
33133313
void EmitKey(raw_ostream& Out, Selector Sel, unsigned) {
33143314
using namespace llvm::support;
33153315

3316-
endian::Writer LE(Out, little);
3316+
endian::Writer LE(Out, llvm::endianness::little);
33173317
uint64_t Start = Out.tell();
33183318
assert((Start >> 32) == 0 && "Selector key offset too large");
33193319
Writer.SetSelectorOffset(Sel, Start);
@@ -3330,7 +3330,7 @@ class ASTMethodPoolTrait {
33303330
data_type_ref Methods, unsigned DataLen) {
33313331
using namespace llvm::support;
33323332

3333-
endian::Writer LE(Out, little);
3333+
endian::Writer LE(Out, llvm::endianness::little);
33343334
uint64_t Start = Out.tell(); (void)Start;
33353335
LE.write<uint32_t>(Methods.ID);
33363336
unsigned NumInstanceMethods = 0;
@@ -3453,7 +3453,7 @@ void ASTWriter::WriteSelectors(Sema &SemaRef) {
34533453
ASTMethodPoolTrait Trait(*this);
34543454
llvm::raw_svector_ostream Out(MethodPool);
34553455
// Make sure that no bucket is at offset 0
3456-
endian::write<uint32_t>(Out, 0, little);
3456+
endian::write<uint32_t>(Out, 0, llvm::endianness::little);
34573457
BucketOffset = Generator.Emit(Out, Trait);
34583458
}
34593459

@@ -3650,7 +3650,7 @@ class ASTIdentifierTableTrait {
36503650
IdentID ID, unsigned) {
36513651
using namespace llvm::support;
36523652

3653-
endian::Writer LE(Out, little);
3653+
endian::Writer LE(Out, llvm::endianness::little);
36543654

36553655
auto MacroOffset = Writer.getMacroDirectivesOffset(II);
36563656
if (!isInterestingIdentifier(II, MacroOffset)) {
@@ -3749,7 +3749,7 @@ void ASTWriter::WriteIdentifierTable(Preprocessor &PP,
37493749

37503750
llvm::raw_svector_ostream Out(IdentifierTable);
37513751
// Make sure that no bucket is at offset 0
3752-
endian::write<uint32_t>(Out, 0, little);
3752+
endian::write<uint32_t>(Out, 0, llvm::endianness::little);
37533753
BucketOffset = Generator.Emit(Out, Trait);
37543754
}
37553755

@@ -3844,7 +3844,8 @@ class ASTDeclContextNameLookupTrait {
38443844

38453845
using namespace llvm::support;
38463846

3847-
endian::write<uint32_t>(Out, Writer.getChain()->getModuleFileID(F), little);
3847+
endian::write<uint32_t>(Out, Writer.getChain()->getModuleFileID(F),
3848+
llvm::endianness::little);
38483849
}
38493850

38503851
std::pair<unsigned, unsigned> EmitKeyDataLength(raw_ostream &Out,
@@ -3879,7 +3880,7 @@ class ASTDeclContextNameLookupTrait {
38793880
void EmitKey(raw_ostream &Out, DeclarationNameKey Name, unsigned) {
38803881
using namespace llvm::support;
38813882

3882-
endian::Writer LE(Out, little);
3883+
endian::Writer LE(Out, llvm::endianness::little);
38833884
LE.write<uint8_t>(Name.getKind());
38843885
switch (Name.getKind()) {
38853886
case DeclarationName::Identifier:
@@ -3911,7 +3912,7 @@ class ASTDeclContextNameLookupTrait {
39113912
unsigned DataLen) {
39123913
using namespace llvm::support;
39133914

3914-
endian::Writer LE(Out, little);
3915+
endian::Writer LE(Out, llvm::endianness::little);
39153916
uint64_t Start = Out.tell(); (void)Start;
39163917
for (unsigned I = Lookup.first, N = Lookup.second; I != N; ++I)
39173918
LE.write<uint32_t>(DeclIDs[I]);
@@ -5024,7 +5025,7 @@ ASTFileSignature ASTWriter::WriteASTCore(Sema &SemaRef, StringRef isysroot,
50245025
for (ModuleFile &M : Chain->ModuleMgr) {
50255026
using namespace llvm::support;
50265027

5027-
endian::Writer LE(Out, little);
5028+
endian::Writer LE(Out, llvm::endianness::little);
50285029
LE.write<uint8_t>(static_cast<uint8_t>(M.Kind));
50295030
StringRef Name = M.isModule() ? M.ModuleName : M.FileName;
50305031
LE.write<uint16_t>(Name.size());

0 commit comments

Comments
 (0)