News for hackers. Stuff that matters.
Re:Chromium Windows builds now use Clang by default by blinkingled on Friday July 28, 2017 @09:09PM (#14878922)
> 64-bit MSVC doesn't support inline assembly

Wow. That's a big omission on Microsoft's part! I wonder how they themselves are getting around it for Win64 performance sensitive code.

Re:Chromium Windows builds now use Clang by default by CoolGuySteve on Saturday July 29, 2017 @07:52AM (#14880724)
IIRC, Microsoft wants you to use intrinsics because it plays better with their register coloring and code reordering optimizations.

Unless there's an instruction you need that doesn't have an intrinsic or you're writing something like a spin lock where instruction ordering is critical and a compiler barrier for some reason is not sufficient, there's no reason to ever write assembly.

Your code won't be appreciably faster than if you tuned it in the compiler, and after a few years the compiler will integrate new instructions while your assembly just gets stale.

Re:Chromium Windows builds now use Clang by default by xorblurb on Saturday July 29, 2017 @09:08AM (#14881028)
> Unless there's an instruction you need that doesn't have an intrinsic or you're writing something like a spin lock where instruction ordering is critical and a compiler barrier for some reason is not sufficient, there's no reason to ever write assembly.

So there are reasons to write code in assembly language.

Re:Chromium Windows builds now use Clang by default by CoolGuySteve on Saturday July 29, 2017 @09:38AM (#14881163)
OK, there's no reason for YOU to write code in assembly.
Re:Chromium Windows builds now use Clang by default by xorblurb on Monday August 07, 2017 @02:30PM (#14949940)
For me, personally? I occasionally can write that kind of stuff.
Re:Chromium Windows builds now use Clang by default by dman on Friday July 28, 2017 @09:12PM (#14878931)
You can still write routines in assembly, you cant write it inline.
Re:Chromium Windows builds now use Clang by default by MaulingMonkey on Friday July 28, 2017 @11:01PM (#14879267)
You can also use intrinsics if you don't want to write your entire routine in assembly.
Re:Chromium Windows builds now use Clang by default by yuhong on Friday July 28, 2017 @11:02PM (#14879269)
You are supposed to use special MASM directives to generate function tables for SEH.
Re:Chromium Windows builds now use Clang by default by raverbashing on Saturday July 29, 2017 @06:17AM (#14880477)
There are few reasons to use assembly, and even fewer to use inline assembly

Using CPUID is one, using very specific vector instructions another (but you can do most of this using intrinsics) and it's better if they get their own .s file

Re:Chromium Windows builds now use Clang by default by imron on Saturday July 29, 2017 @11:41AM (#14881707)
inline assembly e.g. intermixed with C/C++ code is not supported. You can still have separate files that are ASM only.

It's more hassle, but still possible to use.