diff --git a/Theory/asm.md b/Theory/asm.md index 5ce0a47..6251130 100644 --- a/Theory/asm.md +++ b/Theory/asm.md @@ -307,7 +307,7 @@ a = 100 Or for example the `I` constraint which represents a `32-bit` integer. The difference between the `i` and `I` constraints is that `i` is more general, while `I` is for strictly `32-bit` integer data. For example if you try to compile the following example: ```C -int test_asm(int nr) +unsigned long test_asm(int nr) { unsigned long a = 0; @@ -330,7 +330,7 @@ test.c:7:9: error: impossible constraint in ‘asm’ when: ```C -int test_asm(int nr) +unsigned long test_asm(int nr) { unsigned long a = 0; @@ -358,7 +358,7 @@ int main(void) static unsigned long element; __asm__ volatile("movq 16+%1, %0" : "=r"(element) : "o"(arr)); - printf("%d\n", element); + printf("%lu\n", element); return 0; } ``` diff --git a/contributors.md b/contributors.md index 3f3284c..f024877 100644 --- a/contributors.md +++ b/contributors.md @@ -85,3 +85,4 @@ Thank you to all contributors: * [Piyush Pangtey](https://github.com/pangteypiyush) * [Alfred Agrell](https://github.com/Alcaro) * [Jakub Wilk](https://github.com/jwilk) +* [Matthew Fernandez](https://github.com/Smattr)