{"push_id":985398519,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"af4a98fed6c2fba58fccf49c40cc78e27875e385","before":"8ba7696b976767495fff6e92579101a3669e014f","commits":[{"sha":"af4a98fed6c2fba58fccf49c40cc78e27875e385","author":{"email":"9b53232558b3077c845b1a7261f584da5d8fed25@andric.com","name":"Dimitry Andric"},"message":"Fix incorrect selection of AVX512 sqrt when OptForSize is on\n\nSummary:\nWhen optimizing for size, sqrt calls can be incorrectly selected as\nAVX512 VSQRT instructions.  This is because X86InstrAVX512.td has a\n`Requires<[OptForSize]>` in its `avx512_sqrt_scalar` multiclass\ndefinition.  Even if the target does not support AVX512, the class can\napparently still be chosen, leading to an incorrect selection of\n`vsqrtss`.\n\nIn PR26625, this lead to an assertion: Reg >= X86::FP0 && Reg <=\nX86::FP6 && \"Expected FP register!\", because the `vsqrtss` instruction\nrequires an XMM register, which is not available on i686 CPUs.\n\nReviewers: grosbach, resistor, joker.eph\n\nSubscribers: spatel, emaste, llvm-commits\n\nDifferential Revision: http://reviews.llvm.org/D17414\n\ngit-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261360 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/llvm-mirror/llvm/commits/af4a98fed6c2fba58fccf49c40cc78e27875e385"}]}