diff --git a/llvm/lib/Target/BPF/BTFDebug.cpp b/llvm/lib/Target/BPF/BTFDebug.cpp --- a/llvm/lib/Target/BPF/BTFDebug.cpp +++ b/llvm/lib/Target/BPF/BTFDebug.cpp @@ -386,12 +386,12 @@ BTFType.NameOff = BDebug.addString(Name); } -BTFTypeTag::BTFTypeTag(uint32_t BaseTypeId, int ComponentId, StringRef Tag) +BTFTypeTag::BTFTypeTag(uint32_t BaseTypeId, int ComponentIdx, StringRef Tag) : Tag(Tag) { Kind = BTF::BTF_KIND_TAG; - BTFType.Info = ((ComponentId < 0) << 31) | (Kind << 24); + BTFType.Info = Kind << 24; BTFType.Type = BaseTypeId; - Info = ComponentId < 0 ? 0 : ComponentId; + Info = ComponentIdx; } void BTFTypeTag::completeType(BTFDebug &BDebug) { @@ -497,7 +497,7 @@ } void BTFDebug::processAnnotations(DINodeArray Annotations, uint32_t BaseTypeId, - int ComponentId) { + int ComponentIdx) { if (!Annotations) return; @@ -508,7 +508,7 @@ continue; const MDString *Value = cast(MD->getOperand(1)); - auto TypeEntry = std::make_unique(BaseTypeId, ComponentId, + auto TypeEntry = std::make_unique(BaseTypeId, ComponentIdx, Value->getString()); addType(std::move(TypeEntry)); } diff --git a/llvm/test/CodeGen/BPF/BTF/tag-1.ll b/llvm/test/CodeGen/BPF/BTF/tag-1.ll --- a/llvm/test/CodeGen/BPF/BTF/tag-1.ll +++ b/llvm/test/CodeGen/BPF/BTF/tag-1.ll @@ -50,13 +50,13 @@ ; CHECK-NEXT: .long 4 ; CHECK-NEXT: .long 32 # 0x20 ; CHECK-NEXT: .long 10 # BTF_KIND_TAG(id = 2) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 1 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK-NEXT: .long 15 # BTF_KIND_TAG(id = 3) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 1 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK-NEXT: .long 20 # BTF_KIND_INT(id = 4) ; CHECK-NEXT: .long 16777216 # 0x1000000 ; CHECK-NEXT: .long 4 @@ -74,13 +74,13 @@ ; CHECK-NEXT: .long 1 ; CHECK-NEXT: .long 1 ; CHECK-NEXT: .long 10 # BTF_KIND_TAG(id = 8) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 7 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK-NEXT: .long 15 # BTF_KIND_TAG(id = 9) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 7 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK: .ascii "t1" # string offset=1 ; CHECK: .ascii "a1" # string offset=4 diff --git a/llvm/test/CodeGen/BPF/BTF/tag-2.ll b/llvm/test/CodeGen/BPF/BTF/tag-2.ll --- a/llvm/test/CodeGen/BPF/BTF/tag-2.ll +++ b/llvm/test/CodeGen/BPF/BTF/tag-2.ll @@ -95,9 +95,9 @@ ; CHECK-NEXT: .long 4 ; CHECK-NEXT: .long 1 ; CHECK-NEXT: .long 19 # BTF_KIND_TAG(id = 6) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 4 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK-NEXT: .long 0 # BTF_KIND_FUNC_PROTO(id = 7) ; CHECK-NEXT: .long 218103810 # 0xd000002 ; CHECK-NEXT: .long 1 @@ -109,12 +109,13 @@ ; CHECK-NEXT: .long 201326594 # 0xc000002 ; CHECK-NEXT: .long 7 ; CHECK-NEXT: .long 19 # BTF_KIND_TAG(id = 9) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 8 -; CHECK-NEXT: .long 0 +; CHECK-NEXT: .long 4294967295 ; CHECK-NEXT: .long 76 # BTF_KIND_TAG(id = 10) -; CHECK-NEXT: .long 2432696320 # 0x91000000 +; CHECK-NEXT: .long 285212672 # 0x11000000 ; CHECK-NEXT: .long 8 +; CHECK-NEXT: .long 4294967295 ; CHECK: .ascii "int" # string offset=1 ; CHECK: .ascii "arg1" # string offset=5