#76·acwj

在搭载 M1 晶片的 macOS 上,使用 cc -o out out.s

作者: ge1mina023创建于 2024年7月21日更新于 2024年8月30日

After that, I got an error. If I typed cc -o out out.s, I got: `out.s:5:8: error: unknown token in expression pushq %rbp ^ out.s:5:8: error: invalid operand pushq %rbp ^ out.s:6:7: error: unknown token in expression movq %rsp, %rbp ^ out.s:6:7: error: invalid operand movq %rsp, %rbp ^ out.s:7:12: error: unknown token in expression subq $16, %rsp ^ out.s:7:12: error: invalid operand subq $16, %rsp ^ out.s:8:7: error: unknown token in expression movl %edi, -4(%rbp) ^ out.s:8:7: error: invalid operand movl %edi, -4(%rbp) ^ out.s:9:9: error: unexpected token in argument list movl -4(%rbp), %eax ^ out.s:10:7: error: unknown token in expression movl %eax, %esi ^ out.s:10:7: error: invalid operand movl %eax, %esi ^ out.s:11:11: error: unexpected token in argument list leaq .LC0(%rip), %rdi ^ out.s:12:11: error: unknown token in expression movl $0, %eax ^ out.s:12:11: error: invalid operand movl $0, %eax ^ out.s:13:2: error: unrecognized instruction mnemonic, did you mean: casl? call printf@PLT ^ out.s:15:2: error: unrecognized instruction mnemonic leave ^ out.s:19:2: error: unknown directive .type main, @function ^ out.s:21:8: error: unknown token in expression pushq %rbp ^ out.s:21:8: error: invalid operand pushq %rbp ^ out.s:22:7: error: unknown token in expression movq %rsp, %rbp ^ out.s:22:7: error: invalid operand movq %rsp, %rbp ^ out.s:23:11: error: unknown token in expression movq $2, %r8 ^ out.s:23:11: error: invalid operand movq $2, %r8 ^ out.s:24:11: error: unknown token in expression movq $3, %r9 ^ out.s:24:11: error: invalid operand movq $3, %r9 ^ out.s:25:11: error: unknown token in expression movq $5, %r10 ^ out.s:25:11: error: invalid operand movq $5, %r10 ^ out.s:26:8: error: unknown token in expression imulq %r9, %r10 ^ out.s:26:8: error: invalid operand imulq %r9, %r10 ^ out.s:27:7: error: unknown token in expression addq %r8, %r10 ^ out.s:27:7: error: invalid operand addq %r8, %r10 ^ out.s:28:11: error: unknown token in expression movq $8, %r8 ^ out.s:28:11: error: invalid operand movq $8, %r8 ^ out.s:29:11: error: unknown token in expression movq $3, %r9 ^ out.s:29:11: error: invalid operand movq $3, %r9 ^ out.s:30:7: error: unknown token in expression cqo ^ out.s:30:7: error: invalid operand cqo ^ out.s:31:7: error: unknown token in expression idivq %r9 ^ out.s:31:7: error: invalid operand idivq %r9 ^ out.s:32:12: error: unknown token in expression movq %rax, %r8 ^ out.s:32:12: error: invalid operand movq %rax, %r8 ^ out.s:33:7: error: unknown token in expression subq %r8, %r10 ^ out.s:33:7: error: invalid operand subq %r8, %r10 ^ out.s:34:11: error: unknown token in expression movq %r10, %rdi ^ out.s:34:11: error: invalid operand movq %r10, %rdi ^ out.s:35:2: error: unrecognized instruction mnemonic, did you mean: casl? call printint ^ out.s:37:2: error: unrecognized instruction mnemonic leave ^ out.s:41:2: error: unknown directive .type main, @function