r283716 - [x86][inline-asm][clang] accept 'v' constraint

Ismail Donmez via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 10 04:43:21 PDT 2016


Hi,

On Mon, Oct 10, 2016 at 8:45 AM, Michael Zuckerman via cfe-commits
<cfe-commits at lists.llvm.org> wrote:
> Author: mzuckerm
> Date: Mon Oct 10 00:45:54 2016
> New Revision: 283716
>
> URL: http://llvm.org/viewvc/llvm-project?rev=283716&view=rev
> Log:
> [x86][inline-asm][clang] accept 'v' constraint
>
> Commit in the name of: Coby Tayree
>
> 1.'v' constraint for (x86) non-avx arch imitates the already implemented 'x' constraint, i.e. allows XMM{0-15} & YMM{0-15} depending on the apparent arch & mode (32/64).
> 2.for the avx512 arch it allows [X,Y,Z]MM{0-31} (mode dependent)
>
> This patch applies the needed changes to clang
>  LLVM patch: https://reviews.llvm.org/D25005
>
> Differential Revision: D25004

This fails on Linux x86-64:

 --
Exit Code: 1

Command Output (stderr):
--
/home/abuild/rpmbuild/BUILD/llvm/tools/clang/test/CodeGen/x86-inline-asm-v-constraint.c:10:9:
error: expected string not found in input
// SSE: call <4 x float> asm "vmovhlps $1, $2, $0",
"=v,v,v,~{dirflag},~{fpsr},~{flags}"(i64 %0, <4 x float> %1)
        ^
<stdin>:1:1: note: scanning from here
 ; ModuleID = '/home/abuild/rpmbuild/BUILD/llvm/tools/clang/test/CodeGen/x86-inline-asm-v-constraint.c'
 ^
<stdin>:14:7: note: possible intended match here
%3 = call <4 x float> asm "vmovhlps $1, $2, $0",
"=v,v,v,~{dirflag},~{fpsr},~{flags}"(i64 %1, <4 x float> %2) #1,
!srcloc !1
      ^

--


More information about the cfe-commits mailing list