MaskRay added a comment.

Mostly looks good, with a nit in the test and some suggestion to the summary.

In D129401#3662857 <https://reviews.llvm.org/D129401#3662857>, @quinnp wrote:

>> If this is for the legacy LTO interface, please state so.  `lld/*/LTO.cpp` 
>> sets `c.Options.DataSections = true;` to enable data sections by default.
>
> Hey @MaskRay, I'm not sure what is considered the legacy LTO interface, but 
> this change is to make the `libLTO` codegen match the behaviour of `LTO` used 
> through `lld` and `gold plugin`. Both `lld` and `gold plugin` turn on 
> `data-sections` for `LTO` by default:
>
> - as you mentioned `lld/*/LTO.cpp` sets `c.Options.DataSections = true;` by 
> default.
> - and `llvm/tools/gold/gold-plugin.cpp` sets `Conf.Options.DataSections = 
> SplitSections;` provided that the user did not explicitly set/unset 
> `data-sections` where `SplitSections` is `true` unless `gold plugin` is doing 
> a relocatable link.

There is a legacy LTO interface (see 
llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h) and a resolution-based 
interface.
Change libLTO in "This patch changes libLTO to set data-sections by default." 
to legacy LTO.

> This patch also fixes the forwarding of the clang options -fno-data-sections 
> and -fno-function-sections to libLTO

This sentence can keep using libLTO or LLVMLTO (the library is LLVMLTO per 
llvm/lib/LTO/CMakeLists.txt)



================
Comment at: llvm/test/LTO/PowerPC/data-sections-linux.ll:9
+; RUN:   %t/no-data-sections.o
+; RUN: obj2yaml %t/default.o | FileCheck --match-full-lines %s
+; RUN: obj2yaml %t/data-sections.o | FileCheck --match-full-lines %s
----------------
Using obj2yaml for symbol attributes is overkill and is less readable.

Use `llvm-objdump -t`


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D129401/new/

https://reviews.llvm.org/D129401

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to