O processador da Broadcom no Raspberry Pi contém um processador de uso geral ARM v6 e uma GPU Broadcom VideoCore IV. Não há dados disponíveis atualmente em outros núcleos (se houver) disponíveis no BCM2835.
Existe amplo suporte de compiladores para o processador ARM, incluindo o GCC.
Há também vários cross-compiler toolchains.
As flags do compilador gcc que produzirão o código mais ideal para o RPi são:
-Ofast -mfpu=vfp -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s
-Ofast pode produzir erros de compilação para alguns programas.
Nesse caso, -O3 ou -O2 devem ser usados no lugar.
Note que -mcpu = arm1176jzf-s pode ser usado no lugar de -march = armv6zk -mtune = arm1176jzf-s.
Se você quiser gerar um compilador relativamente atualizado que use as flags otimizadas por padrão, você pode executar sua própria versão do Linaro GCC.
Versões mais novas do Raspberry tem Armv7 e Armv8. Este último, até a data de hoje é sempre desativado para que todos rodem sobre base 32 bits. Caso queira ativar base64 e os poderes deste último processador clique aqui.