[LLVMdev] [PATCH]: MSVC build enhancements

OvermindDL1 overminddl1 at gmail.com
Sat Mar 6 15:11:24 PST 2010


On Sat, Mar 6, 2010 at 4:08 PM, Isaac Dupree
<ml at isaac.cedarswampstudios.org> wrote:
> On 03/06/10 18:03, OvermindDL1 wrote:
>>
>> On Sat, Mar 6, 2010 at 3:57 PM, Isaac Dupree
>> <ml at isaac.cedarswampstudios.org>  wrote:
>>>
>>> On 03/06/10 17:37, OvermindDL1 wrote:
>>>>
>>>> Whoops, mailing list headers still broken, sending to the list this
>>>> time:
>>>>
>>>> On Sat, Mar 6, 2010 at 3:35 PM, OvermindDL1<overminddl1 at gmail.com>
>>>>  wrote:
>>>>>
>>>>> On Sat, Mar 6, 2010 at 11:40 AM, Cédric Venet<cedric.venet at laposte.net>
>>>>>    wrote:
>>>>>>
>>>>>> So adding an option for adding this flag would be great but not
>>>>>> changing the
>>>>>> default. (The flag is interesting because it can leads to great
>>>>>> performance
>>>>>> improvement in STL heavy code (up to x10 and more on particular
>>>>>> code)).
>>>>>
>>>>> I use this for every bit of my code:
>>>>>   /D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE
>>>>> /D_CRT_SECURE_NO_WARNINGS /D_SECURE_SCL=0 /D_SCL_SECURE_NO_DEPRECATE
>>>>> /D_HAS_ITERATOR_DEBUGGING=0
>>>>>
>>>>> In one particular class in one of my libraries, the speed difference
>>>>> is the difference of it running in about 10ms, compared to it running
>>>>> in about 12 minutes, and yes that is accurate.  That is a lot greater
>>>>> then just "10x".
>>>
>>> you mean the faster time *was* 10 ms, not that
>>> there was a 10 ms difference...
>>>
>>> 12 minutes = 720 seconds = 720000 ms. You describe a 72000x difference :)
>>
>> Correct, as stated, whoever at MS designed that code needs a swift
>> kick to their family jewels.  ;-)
>>
>> Admittedly, it was a lot of template code, and most of it optimized
>> out and inlined beautifully, once those above definitions were made,
>> without them *nothing* inlined, and it ran slower then all freaking
>> heck.
>
> (remember to send to the list! I won't mind the duplicate)

Bah, freaking list headers still broken!

But yes, my whole definition line above, I would love it if all of
those were added to CMake (non-default I guess) so I did not need to
add it to the compile line manually.  :)




More information about the llvm-dev mailing list