This is an archive of the discontinued LLVM Phabricator instance.

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

Authored by coby on Sep 28 2016, 12:24 AM.

Details

Summary
  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

Diff Detail

Event Timeline

coby updated this revision to Diff 72768.Sep 28 2016, 12:24 AM
coby retitled this revision from to [x86][inline-asm][clang] accept 'v' constraint.
coby updated this object.
coby added reviewers: echristo, delena.
coby set the repository for this revision to rL LLVM.
coby added a subscriber: cfe-commits.
coby updated this object.Sep 28 2016, 12:30 AM
delena added inline comments.Sep 28 2016, 1:21 AM
test/CodeGen/x86-inline-asm-v-constraint.c
3

add KNL tests here.

coby updated this revision to Diff 72961.Sep 29 2016, 1:02 AM
coby marked an inline comment as done.

Addressing comments:
Added a check for KNL as well

coby updated this revision to Diff 74060.Oct 9 2016, 2:11 AM
coby removed rL LLVM as the repository for this revision.
delena accepted this revision.Oct 9 2016, 2:15 AM
delena edited edge metadata.
This revision is now accepted and ready to land.Oct 9 2016, 2:15 AM
coby closed this revision.Oct 10 2016, 12:11 AM

Commitd to revision 283716