[llvm-dev] Deprecating ADDC/ADDE/SUBC/SUBE
Amaury Séchet via llvm-dev
llvm-dev at lists.llvm.org
Fri Jun 1 05:47:44 PDT 2018
2018-05-31 21:37 GMT+02:00 Friedman, Eli via llvm-dev <
llvm-dev at lists.llvm.org>:
> On 5/31/2018 11:28 AM, whitequark via llvm-dev wrote:
>> On 2018-05-30 16:57, Amaury Séchet via llvm-dev wrote:
>>> These opcodes have been deprecated about a year ago, but still in use
>>> in various backend.
>>> In https://reviews.llvm.org/D47422 I would like to change the behavior
>>> of the backend to not enable the use of these opcodes by default. The
>>> opcode remains usable by any backend that wish to use them, but that
>>> should limit the situation where newer backend just use them as they
>>> are enabled by default.
>>> This shouldn't break any out of tree backend, however, it may cause
>>> misoptimisation if the backend dev do not activate these opcodes via
>>> setOperationAction and rely on them for some of their optimizations.
>> Thanks for heads up, this will impact the OR1K backend.
>> Is there any guidance for migrating to U*O/*CARRY?
>> If your target has a dedicated flags/carry register (x86/ARM/etc.), see
> https://reviews.llvm.org/D35192 for a description of how to add the
> necessary conversions to get efficient lowering. Otherwise, the correct
> lowering should be obvious; see https://reviews.llvm.org/D47559 .
> Employee of Qualcomm Innovation Center, Inc.
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux
> Foundation Collaborative Project
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
These guidelines are good. The X86 backend does something very similar.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev