Displaying 1 result from an estimated 1 matches for "09lock".
Did you mean:
00lock
2013 Sep 23
0
[LLVMdev] Wrong types in inline assembly?
...t, first, new_first) != first);
return !first;
}
The generated code in the IR for the cmpxchg call is:
%struct.llist_node = type { %struct.llist_node* }
%tmp8 = tail call %struct.llist_node* asm sideeffect ".pushsection
.smp_locks,\22a\22\0A.balign 4\0A.long 671f -
.\0A.popsection\0A671:\0A\09lock; cmpxchgq $2,$1",
"={ax},=*m,r,0,*m,~{memory},~{dirflag},~{fpsr},~{flags}"(i64* %tmp2,
%struct.llist_node* %tmp7, %struct.llist_node* %entry.0, i64* %tmp2)
Can someone explain how cmpxchg can receive a struct type? That seems
a potential bug to me.
Moreover, shouldn't there be...