In intel assembly 86-84 (AT&T) what's the difference between:
imul $4, a, %eax
and:
imul $4, $a, %eax
and:
imul $4, (a), %eax # Sometimes I see braces around registers too, what is their job?
where a is a variable in memory declared like this:
.section .data
a: .int 0x2