diff options
author | Paul Robinson <paul.robinson@sony.com> | 2017-06-26 18:43:01 +0000 |
---|---|---|
committer | Paul Robinson <paul.robinson@sony.com> | 2017-06-26 18:43:01 +0000 |
commit | 75c068c50bf8ce761b51344ffa09418c280cd27b (patch) | |
tree | 3d9634e7c1388de2b0a6b011bb18307bd24d1f57 /llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp | |
parent | d58f05179270e38fd7346e8a53a2a915eb27d041 (diff) | |
download | bcm5719-llvm-75c068c50bf8ce761b51344ffa09418c280cd27b.tar.gz bcm5719-llvm-75c068c50bf8ce761b51344ffa09418c280cd27b.zip |
[DWARF] NFC: Collect info used by DWARFFormValue into a helper.
Some forms have sizes that depend on the DWARF version, DWARF format
(32/64-bit), or the size of an address. Collect these into a struct
to simplify passing them around. Require callers to provide one when
they query a form's size.
Differential Revision: http://reviews.llvm.org/D34570
llvm-svn: 306315
Diffstat (limited to 'llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp')
-rw-r--r-- | llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp b/llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp index da7f43e721a..621796b684d 100644 --- a/llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp +++ b/llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp @@ -23,43 +23,52 @@ namespace { TEST(DWARFFormValue, FixedFormSizes) { Optional<uint8_t> RefSize; Optional<uint8_t> AddrSize; + // Test 32 bit DWARF version 2 with 4 byte addresses. - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 2, 4, DWARF32); - AddrSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 2, 4, DWARF32); + DWARFFormParams Params_2_4_32 = {2, 4, DWARF32}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_2_4_32); + AddrSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_2_4_32); EXPECT_TRUE(RefSize.hasValue()); EXPECT_TRUE(AddrSize.hasValue()); EXPECT_EQ(*RefSize, *AddrSize); // Test 32 bit DWARF version 2 with 8 byte addresses. - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 2, 8, DWARF32); - AddrSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 2, 8, DWARF32); + DWARFFormParams Params_2_8_32 = {2, 8, DWARF32}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_2_8_32); + AddrSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_2_8_32); EXPECT_TRUE(RefSize.hasValue()); EXPECT_TRUE(AddrSize.hasValue()); EXPECT_EQ(*RefSize, *AddrSize); // DW_FORM_ref_addr is 4 bytes in DWARF 32 in DWARF version 3 and beyond. - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 3, 4, DWARF32); + DWARFFormParams Params_3_4_32 = {3, 4, DWARF32}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_3_4_32); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 4); - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 4, 4, DWARF32); + DWARFFormParams Params_4_4_32 = {4, 4, DWARF32}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_4_4_32); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 4); - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 5, 4, DWARF32); + DWARFFormParams Params_5_4_32 = {5, 4, DWARF32}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_5_4_32); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 4); // DW_FORM_ref_addr is 8 bytes in DWARF 64 in DWARF version 3 and beyond. - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 3, 8, DWARF64); + DWARFFormParams Params_3_8_64 = {3, 8, DWARF64}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_3_8_64); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 8); - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 4, 8, DWARF64); + DWARFFormParams Params_4_8_64 = {4, 8, DWARF64}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_4_8_64); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 8); - RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, 5, 8, DWARF64); + DWARFFormParams Params_5_8_64 = {5, 8, DWARF64}; + RefSize = DWARFFormValue::getFixedByteSize(DW_FORM_ref_addr, Params_5_8_64); EXPECT_TRUE(RefSize.hasValue()); EXPECT_EQ(*RefSize, 8); } |