diff options
author | Georgii Rymar <grimar@accesssoftek.com> | 2020-03-03 10:54:55 +0300 |
---|---|---|
committer | Georgii Rymar <grimar@accesssoftek.com> | 2020-03-17 14:22:19 +0300 |
commit | 4dd5f1ca9b2b7ae50849efeb7cf3ecfbdb1cf67a (patch) | |
tree | 902bcc677e1ad4fbca0ec885ab033569d10ae134 /llvm/lib/CodeGen/StackProtector.cpp | |
parent | af64948e2a050d1ef3b7fd314ed07b2a2fe402a5 (diff) | |
download | llvm-4dd5f1ca9b2b7ae50849efeb7cf3ecfbdb1cf67a.zip llvm-4dd5f1ca9b2b7ae50849efeb7cf3ecfbdb1cf67a.tar.gz llvm-4dd5f1ca9b2b7ae50849efeb7cf3ecfbdb1cf67a.tar.bz2 |
[yaml2obj] - Add `ELFYAML::YAMLIntUInt` to fix how we parse a relocation `Addend` key.
This patch makes `Relocation::Addend` to be `ELFYAML::YAMLIntUInt` and not `int64_t`.
`ELFYAML::YAMLIntUInt` it is a new type and it has the following benefits/features:
1) For an 64-bit object any hex/decimal addends
in the range [INT64_MIN, UINT64_MAX] is accepted.
2) For an 32-bit object any hex/decimal addends
in range [INT32_MIN, UINT32_MAX] is accepted.
3) Negative hex numbers like -0xffffffff are not accepted.
4) It is printed as decimal. I.e. obj2yaml will print
something like "Addend: 125", this matches the current behavior.
This fixes all FIXMEs in `relocation-addend.yaml`.
Differential revision: https://reviews.llvm.org/D75527
Diffstat (limited to 'llvm/lib/CodeGen/StackProtector.cpp')
0 files changed, 0 insertions, 0 deletions