[PATCH] D37568: [AMDGPU] Allow flexible register names in inline asm constraints

Yaxun Liu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 15 12:10:03 PDT 2017


yaxunl marked 2 inline comments as done.
yaxunl added inline comments.


================
Comment at: lib/Basic/Targets/AMDGPU.h:194
+    Info.setAllowsRegister();
+    Name = S.data() - 1;
+    return true;
----------------
arsenm wrote:
> I'm not sure I understand these data() - 1s. 
The caller of this function expects Name is on the last parsed char and will increase it before check the next char.


================
Comment at: test/Sema/inline-asm-validate-amdgpu.cl:74
+    __asm("v_add_f64_e64 v[1:2], v[3:4], v[5:6]" : "=v[1:2]"(ci) : "v[3:4]"(ai), "v[5:6]"(bi) : ); //expected-error {{invalid output constraint '=v[1:2]' in asm}}
+
+    c[i] = ci;
----------------
arsenm wrote:
> While you're here can we add some tests for the immediate constraints? There was a bug report recently when using s_trap with the i constraints for the constant operand.
what's the syntax of the immediate constraints? And some examples? Thanks.


https://reviews.llvm.org/D37568





More information about the cfe-commits mailing list