[patch] Don't add x86 segment registers to the clobber list

Reid Kleckner rnk at google.com
Thu Jul 17 13:21:36 PDT 2014


lgtm, that's more or less what I had in mind.  All MS inline asm blobs are
marked 'sideeffect', so LLVM won't move memory loads and stores across
these segment updates.


On Thu, Jul 17, 2014 at 1:15 PM, Nico Weber <thakis at chromium.org> wrote:

> Hi,
>
> the attached patch makes it so that cs, ds, es, fs, gs, and ss no longer
> are added to the implicit clobber list by AsmParser::parseMSInlineAsm().
> Clang tries to check the clobber list but doesn't list these registers in
> its x86 register list (and gcc doesn't allow listing them as clobber
> registers either). This fixes PR20343. The test will be landed on the clang
> side, it'll look like the test in
> http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20140714/110476.html
> (except that cs and friends will no longer be listed on the clobber list.)
>
> Nico
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140717/21a3bbd8/attachment.html>


More information about the llvm-commits mailing list