diff options
Diffstat (limited to 'lib/Target/GNULDBackend.cpp')
-rw-r--r-- | lib/Target/GNULDBackend.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/GNULDBackend.cpp b/lib/Target/GNULDBackend.cpp index 796c93e..e888bc9 100644 --- a/lib/Target/GNULDBackend.cpp +++ b/lib/Target/GNULDBackend.cpp @@ -1613,12 +1613,14 @@ GNULDBackend::allocateCommonSymbols(Module& pModule) tbss_offset += ObjectBuilder::AppendFragment(*frag, *tbss_sect_data, (*com_sym)->value()); + ObjectBuilder::UpdateSectionAlign(tbss_sect, (*com_sym)->value()); (*com_sym)->setFragmentRef(FragmentRef::Create(*frag, 0)); } else { bss_offset += ObjectBuilder::AppendFragment(*frag, *bss_sect_data, (*com_sym)->value()); + ObjectBuilder::UpdateSectionAlign(bss_sect, (*com_sym)->value()); (*com_sym)->setFragmentRef(FragmentRef::Create(*frag, 0)); } } @@ -1640,12 +1642,14 @@ GNULDBackend::allocateCommonSymbols(Module& pModule) tbss_offset += ObjectBuilder::AppendFragment(*frag, *tbss_sect_data, (*com_sym)->value()); + ObjectBuilder::UpdateSectionAlign(tbss_sect, (*com_sym)->value()); (*com_sym)->setFragmentRef(FragmentRef::Create(*frag, 0)); } else { bss_offset += ObjectBuilder::AppendFragment(*frag, *bss_sect_data, (*com_sym)->value()); + ObjectBuilder::UpdateSectionAlign(bss_sect, (*com_sym)->value()); (*com_sym)->setFragmentRef(FragmentRef::Create(*frag, 0)); } } |