diff --git a/llvm/docs/StackMaps.rst b/llvm/docs/StackMaps.rst --- a/llvm/docs/StackMaps.rst +++ b/llvm/docs/StackMaps.rst @@ -350,7 +350,7 @@ uint32 : Padding (only if required to align to 8 byte) uint16 : Padding uint16 : NumLiveOuts - LiveOuts[NumLiveOuts] + LiveOuts[NumLiveOuts] { uint16 : Dwarf RegNum uint8 : Reserved uint8 : Size in Bytes diff --git a/llvm/lib/CodeGen/StackMaps.cpp b/llvm/lib/CodeGen/StackMaps.cpp --- a/llvm/lib/CodeGen/StackMaps.cpp +++ b/llvm/lib/CodeGen/StackMaps.cpp @@ -469,10 +469,13 @@ /// uint16 : NumLocations /// Location[NumLocations] { /// uint8 : Register | Direct | Indirect | Constant | ConstantIndex -/// uint8 : Size in Bytes +/// uint8 : Reserved (expected to be 0) +/// uint16 : Location Size /// uint16 : Dwarf RegNum -/// int32 : Offset +/// uint16 : Reserved (expected to be 0) +/// int32 : Offset or SmallConstant /// } +/// uint32 : Padding (only if required to align to 8 byte) /// uint16 : Padding /// uint16 : NumLiveOuts /// LiveOuts[NumLiveOuts] {