-march=name
This specifies the name of the target ARM architecture. GCC uses this name to determine what kind of instructions it can emit when generating
assembly code. This option can be used in conjunction with or instead of the -mcpu= option. Permissible names are: armv2, armv2a, armv3,
armv3m, armv4, armv4t, armv5, armv5t, armv5te.
-mcpu=cpu_type
Set the instruction set, register set, and instruction scheduling parameters for machine type cpu_type. Supported values for cpu_type are v7,
cypress, v8, supersparc, sparclite, hypersparc, sparclite86x, f930, f934, sparclet, tsc701, v9, ultrasparc, and ultrasparc3.
Default instruction scheduling parameters are used for values that select an architecture and not an implementation. These are v7, v8, spar-
clite, sparclet, v9.
Here is a list of each supported architecture and their supported implementations.
v7: cypress
v8: supersparc, hypersparc
sparclite: f930, f934, sparclite86x
sparclet: tsc701
v9: ultrasparc, ultrasparc3