I came across a code that looks like this:
asm volatile ( # [...] \"movl $1200, %%ecx;\" # [...] );
I know what movl $120
movl $120
This helps GCC to distinguish between the operands and registers. operands have a single % as prefix. '%%' is always used with registers.