[llvm] r198019 - [Mips] Does not take in account 'use-soft-float' attribute's value when

Simon Atanasyan simon at atanasyan.com
Mon Sep 29 22:14:34 PDT 2014


Hi Eric,

The commit r198019 goes along with the r195124
(http://llvm.org/viewvc/llvm-project?rev=195124&view=rev). The ideas
was to remove mips16 hard/soft float handling from the Clang driver
and make the backend responsible for all these tricks.

I think the couple of these commits did not change the Clang behaviour
and the problem you mention below always existed.

On Mon, Sep 29, 2014 at 11:18 AM, Eric Christopher <echristo at gmail.com> wrote:
> Sorry for the thread necromancy here, but I don't think this patch is correct.
>
> a) It's a bit confusing that you have bar_hf for the function with
> use-soft-float set to true and vice versa for bar_sf, but
> b) As far as I can recall, the stubs are only used for calling hard
> float functions but the testcase currently tests that we emit it for
> both.
> c) The emission of the stubs should be dependent upon the subtarget
> and the value of the soft-float on the function (which would be the
> TM.Options.UseSoftFloat that is reset between each function, but only
> in SelectionDAG or the version in the function attributes).
>
> On Wed, Dec 25, 2013 at 9:00 AM, Simon Atanasyan <simon at atanasyan.com> wrote:
>> Author: atanasyan
>> Date: Wed Dec 25 11:00:27 2013
>> New Revision: 198019
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=198019&view=rev
>> Log:
>> [Mips] Does not take in account 'use-soft-float' attribute's value when
>> consider to generate stubs for mips16 hard-float mode.

-- 
Simon Atanasyan



More information about the llvm-commits mailing list