- 1. What is rustc?
- 2. Command-line Arguments
- 2.1. Print Options
- 2.2. Codegen Options
- 3. Jobserver
- 4. Lints
- 4.1. Lint Levels
- 4.2. Lint Groups
- 4.3. Lint Listing
- 4.3.1. Allowed-by-default Lints
- 4.3.2. Warn-by-default Lints
- 4.3.3. Deny-by-default Lints
- 5. JSON Output
- 6. Tests
- 7. Targets
- 7.1. Built-in Targets
- 7.2. Custom Targets
- 7.3. Known Issues
- 8. Profile-guided Optimization
- 9. Instrumentation-based Code Coverage
- 10. Linker-plugin-based LTO
- 11. Checking Conditional Configurations
- 11.1. Cargo Specifics
- 12. Exploit Mitigations
- 13. Symbol Mangling
- 13.1. v0 Symbol Format
- 14. Contributing to rustc
- 15. Platform Support
- 15.1. Target Tier Policy
- 15.2. Template for Target-specific Documentation
- 15.3. arm64ec-pc-windows-msvc
- 15.4. *-apple-darwin
- 15.4.1. i686-apple-darwin
- 15.4.2. x86_64h-apple-darwin
- 15.4.3. arm64e-apple-darwin
- 15.5. *-apple-ios
- 15.5.1. *-apple-ios-macabi
- 15.5.2. arm64e-apple-ios
- 15.6. *-apple-tvos
- 15.6.1. arm64e-apple-tvos
- 15.7. *-apple-watchos
- 15.8. *-apple-visionos
- 15.9. aarch64-nintendo-switch-freestanding
- 15.10. aarch64-unknown-linux-musl
- 15.11. amdgcn-amd-amdhsa
- 15.12. armeb-unknown-linux-gnueabi
- 15.13. arm-none-eabi
- 15.13.1. armv4t-none-eabi
- 15.13.2. armv5te-none-eabi
- 15.13.3. armv7r-none-eabi
- 15.13.4. armv8r-none-eabihf
- 15.13.5. thumbv6m-none-eabi
- 15.13.6. thumbv7em-none-eabi*
- 15.13.7. thumbv7m-none-eabi
- 15.13.8. thumbv8m.base-none-eabi
- 15.13.9. thumbv8m.main-none-eabi*
- 15.14. armv5te-unknown-linux-gnueabi
- 15.15. armv6k-nintendo-3ds
- 15.16. armv7-rtems-eabihf
- 15.17. armv7-sony-vita-newlibeabihf
- 15.18. armv7-unknown-linux-uclibceabi
- 15.19. armv7-unknown-linux-uclibceabihf
- 15.20. *-android and *-androideabi
- 15.21. *-linux-ohos
- 15.22. *-hurd-gnu
- 15.23. aarch64-unknown-teeos
- 15.24. avr-none
- 15.25. *-espidf
- 15.26. *-unknown-fuchsia
- 15.27. *-unknown-trusty
- 15.28. *-kmc-solid_*
- 15.29. csky-unknown-linux-gnuabiv2*
- 15.30. hexagon-unknown-linux-musl
- 15.31. hexagon-unknown-none-elf
- 15.32. illumos
- 15.33. loongarch*-unknown-linux-*
- 15.34. loongarch*-unknown-none*
- 15.35. *-lynxos178-*
- 15.36. m68k-unknown-linux-gnu
- 15.37. m68k-unknown-none-elf
- 15.38. mips64-openwrt-linux-musl
- 15.39. mips64-unknown-linux-muslabi64
- 15.40. mipsel-sony-psx
- 15.41. mipsel-unknown-linux-gnu
- 15.42. mips*-mti-none-elf
- 15.43. mipsisa*r6*-unknown-linux-gnu*
- 15.44. nvptx64-nvidia-cuda
- 15.45. powerpc-unknown-openbsd
- 15.46. powerpc-unknown-linux-gnuspe
- 15.47. powerpc-unknown-linux-muslspe
- 15.48. powerpc64-ibm-aix
- 15.49. powerpc64-unknown-linux-musl
- 15.50. powerpc64le-unknown-linux-gnu
- 15.51. powerpc64le-unknown-linux-musl
- 15.52. riscv32e*-unknown-none-elf
- 15.53. riscv32i*-unknown-none-elf
- 15.54. riscv32im-risc0-zkvm-elf
- 15.55. riscv32imac-unknown-xous-elf
- 15.56. riscv64gc-unknown-linux-gnu
- 15.57. riscv64gc-unknown-linux-musl
- 15.58. s390x-unknown-linux-gnu
- 15.59. s390x-unknown-linux-musl
- 15.60. sparc-unknown-none-elf
- 15.61. solaris
- 15.62. *-nto-qnx-*
- 15.63. *-unikraft-linux-musl
- 15.64. *-unknown-hermit
- 15.65. *-unknown-freebsd
- 15.66. *-unknown-netbsd*
- 15.67. *-unknown-openbsd
- 15.68. *-unknown-redox
- 15.69. *-unknown-uefi
- 15.70. *-unknown-windows-msvc
- 15.71. *-uwp-windows-msvc
- 15.72. *-wrs-vxworks
- 15.73. wasm32-wasip1
- 15.74. wasm32-wasip1-threads
- 15.75. wasm32-wasip2
- 15.76. wasm32-wali-linux-musl
- 15.77. wasm32-unknown-emscripten
- 15.78. wasm32-unknown-unknown
- 15.79. wasm32v1-none
- 15.80. wasm64-unknown-unknown
- 15.81. windows-gnu
- 15.82. windows-gnullvm
- 15.83. *-win7-windows-gnu
- 15.84. *-win7-windows-msvc
- 15.85. x86_64-fortanix-unknown-sgx
- 15.86. x86_64-pc-cygwin
- 15.87. x86_64-unknown-linux-none
- 15.88. x86_64-unknown-none
- 15.89. xtensa-*-none-elf
- 15.90. *-nuttx-*
- 15.91. i386-lynx-lynxos178