There’s a single kernel tree containing all the code for all the architectures it supports. The list of architectures supported by the Linux kernel (which isn’t a GNU project) is given by the list of directories in arch. Currently:
- alpha: Alpha
- arc: ARC
- arm: 32-bit ARM
- arm64: 64-bit ARM (Aarch64)
- avr32: 32-bit AVR
- blackfin: Blackfin
- c6x: C6x
- cris: ETRAX CRIS
- frv: Fujitsu FR-V
- h8300: Hitachi H8
- hexagon: Qualcomm Hexagon
- ia64: 64-bit Itanium
- m32r: Renesas M32R
- m68k: Motorola 68000
- metag: Meta FPGAs
- microblaze: Xilinx MicroBlaze
- mips: various MIPS
- mn10300: Panasonic MN10300
- nios2: Altera Nios II
- openrisc: OpenRISC (also known as or1k)
- parisc: PA/RISC
- powerpc: 32- and 64-bit PowerPC
- s390: IBM S/390 (64-bit only nowadays)
- score: SunplusCT S+CORE
- sh: Hitachi SuperH
- sparc: 32- and 64-bit SPARC
- tile: Tilera
- um: user-mode Linux
- unicore32: UniCore-32
- x86: 32- and 64-bit x86 (the latter also known as amd64)
- xtensa: Tensilica Xtensa
You’ll note that most 32-/64-bit variants have been merged into single arch directories.