Submission #462625


Source Code Expand

#include <stdio.h>


asm(
"test_func:\n"
"	pushl	%ebp\n"
"	movl	%esp, %ebp\n"
"	pushl	%ebx\n"
"	movl	8(%ebp), %eax\n"
"	movl	12(%ebp), %ebx\n"
"	subl	%ebx,%eax\n"
"	popl	%ebx\n"
"	popl	%ebp\n"
"	ret\n"
);


int main(void){
	int a,b;
	int res =0;
	
	scanf("%d",&a);
	scanf("%d",&b);
asm(
		"	subl	 $0x08,%%esp\n"
		"	movl	%%eax,0(%%esp)\n"
		"	movl	%%ebx,4(%%esp)\n"
		"	call test_func\n"
		"	addl	$0x08,%%esp\n"
		:"=a"(res)
		:"a"(a),"b"(b)
   );
	printf("%d\n",res);
	
	
	return 0;
}

Submission Info

Submission Time
Task A - 積雪深差
User nearwisteria
Language C (GCC 4.6.4)
Score 0
Code Size 523 Byte
Status CE

Compile Error

./Main.c: In function ‘main’:
./Main.c:22:7: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
./Main.c:23:7: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
/tmp/ccbs2zTe.s: Assembler messages:
/tmp/ccbs2zTe.s:4: Error: invalid instruction suffix for `push'
/tmp/ccbs2zTe.s:6: Error: invalid instruction suffix for `push'
/tmp/ccbs2zTe.s:10: Error: invalid instruction suffix for `pop'
/tmp/ccbs2zTe.s:11: Error: invalid instruction suffix for `pop'