<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 19, 2015 at 9:51 PM, nick <span dir="ltr">&lt;<a href="mailto:xerofoify@gmail.com" target="_blank">xerofoify@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Greetings All,<br>
I am wondering what the below code in the asm modifier does:<br>
static inline void set_bit(int nr, void *addr)<br>
{<br>
         asm(&quot;btsl %1,%0&quot; : &quot;+m&quot; (*(u32 *)addr) : &quot;Ir&quot; (nr));<br>
}<br>
This would be very helpful as I am new to  x86 assembly and don&#39;t<br>
even known what register(s)/instruction(s) this touches and therefore this<br>
is impossible for me to look up in the Intel Manuals. If someone either<br>
tells me the registers/instructions this uses or explains the code that<br>
would be very helpful.<br>
Nick<br>
<br>
_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
</blockquote></div><br></div><div class="gmail_extra">get a book on i86 assembly and learn it. <br clear="all"></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature">Thank you <br>Warm Regards<br>Anuz<br></div>
</div></div>