[PATCH] Update to Cmake for VS 2013
Jim Grosbach
grosbach at apple.com
Tue Nov 12 10:08:32 PST 2013
On Nov 10, 2013, at 8:01 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
> Ping with an explanation -- we have 16 instances of this warning in VS
> 2013 stemming from usage of HUGE_VALF in one header and three cpp
> files. So the choices we have for a clean build boil down to:
>
> 1) Blanket disable the warning -- I dislike this approach because it's
> a useful warning in the vast majority of circumstances.
> 2) Use pragmas to spot-disable the warning -- I dislike this approach
> because it needs to be disabled in several different places and is
> messy.
> 3) Use llvm::huge_valf from this patch -- I dislike this approach
> because it's replacing standard C functionality with something
> non-standard which affects all backends.
>
> Short of removing floating-point usage in the backend where HUGE_VALF
> is a sentinel value (which may be a worthy idea for someday), I don't
> see other alternatives, and I think that #3 is the least invasive.
I’d really like to see us move away from floating point usage in the backend, but that’s far too large a task to be gating VS2013. (3) sounds least invasive to me, and is consistent with how we’ve dealt with analogous things before, for better or worse.
-Jim
> ~Aaron
>
>
> On Mon, Nov 4, 2013 at 7:42 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
>> Ping?
>>
>> ~Aaron
>>
>> On Tue, Oct 29, 2013 at 7:27 PM, Reid Kleckner <rnk at google.com> wrote:
>>> This seems like a better solution to me, but I'd like to hear from someone
>>> who actually uses floating point values in LLVM-land if they think this is
>>> OK.
>>>
>>>
>>> On Tue, Oct 29, 2013 at 4:22 PM, Aaron Ballman <aaron at aaronballman.com>
>>> wrote:
>>>>
>>>> Here's a patch with an attempt at llvm::huge_valf (I also included
>>>> vald and vall for consistency). It compiles cleanly with VS 2013,
>>>> though it's impossible to tell how it affects tests since there is
>>>> currently a miscompile that causes most of them to crash.
>>>>
>>>> ~Aaron
>>>>
>>>> On Tue, Oct 29, 2013 at 6:55 PM, Reid Kleckner <rnk at google.com> wrote:
>>>>> On Tue, Oct 29, 2013 at 3:48 PM, Aaron Ballman <aaron at aaronballman.com>
>>>>> wrote:
>>>>>>
>>>>>> There were about 15 warnings in several places from it.
>>>>>>
>>>>>> LiveIntervalAnalysis.cpp
>>>>>> RegAllocGreedy.cpp in three places
>>>>>> Spiller.cpp
>>>>>> LiveInterval.h in two places
>>>>>>
>>>>>> If it was just in a single header file and getting tripped over on
>>>>>> include, I would be okay with it, but it's a bit more widely dispersed
>>>>>> than that.
>>>>>>
>>>>>> Alternatively, we could make an llvm::huge_valf that does suppress the
>>>>>> warning and gets used in place of HUGE_VALF, if that's preferable?
>>>>>
>>>>>
>>>>> llvm::huge_valf does sound preferable, as annoying as it is not to be
>>>>> able
>>>>> to use standard stuff from math.h.
>>>
>>>
> <huge_valf.patch>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131112/5b97cbc1/attachment.html>
More information about the llvm-commits
mailing list