Existe uma maneira de obter o gcc para gerar binário bruto?

Existe um conjunto de opções de linha de comando que convencerá o gcc a produzir um arquivo binário simples a partir de um arquivo de origem independente? Por exemplo, suponha que o conteúdo de foo.c seja

static int f(int x)
{
  int y = x*x;
  return y+2;
}

Nenhuma referência externa, nada para exportar para o vinculador. Eu gostaria de obter um pequeno arquivo com apenas as instruções da máquina para esta função, sem qualquer outra decoração. Classifique como um arquivo .COM (DOS), exceto o modo protegido de 32 bits.

questionAnswers(4)

yourAnswerToTheQuestion