#include <cstdio>

int main(void) {
	int add(int a,int b);
	__asm__ __volatile__ (
		"jmp 1f\n\t"
		"Z3addii:\n\t"
		"_Z3addii:\n\t"
		"__Z3addii:\n\t"
		"pop %ecx\n\t"
		"pop %edx\n\t"
		"pop %eax\n\t"
		"push %eax\n\t"
		"push %edx\n\t"
		"push %ecx\n\t"
		"add %edx, %eax\n\t"
		"ret\n\t"
		"1:\n\t"
	);
	printf("%d\n", add(12, 34));
	return 0;
}
