#include int add(int a, int b) { int result; asm volatile ( "addl %2, %1;" // Add b "movl %1, %0;" : "=r" (result) : "r" (a), "r" (b) : "cc" ); return result; } int main(void) { int x = 10, y = 20; printf("%d + %d = %d\n", x, y, add(x, y)); return 0; }