-fno-builtin 标志禁止这种替换,确保程序使用原始的函数调用。 从心理学的角度看,这与我们对控制和预测性的需求相似。正如我们希望能够控制自己的命运和选择,程序员也希望能够控制代码的行为和性能。使用 -fno-builtin 可以确保代码的行为是可预测和可控的。 4.3 异常处理的心理学 异常处理是编程中的一个重要概念,它允许我
编译器通常会将某些函数调用替换为内建函数,因为它们更快。-fno-builtin标志禁止这种替换,确保程序使用原始的函数调用。 从心理学的角度看,这与我们对控制和预测性的需求相似。正如我们希望能够控制自己的命运和选择,程序员也希望能够控制代码的行为和性能。使用-fno-builtin可以确保代码的行为是可预测和可控的。 4.3...
-fno-builtin 除非利用"__builtin_"进行引用,否则不识别所有内建函数。 -fmerge-all-constants 试图将跨编译单元的所有常量值和数组合并在一个副本中。但是标准C/C++要求每个变量都必须有不同的存储位置。 -fmove-all-movables 将所有不变的表达式移动到循环体之外,这种做法的好坏取决于源代码中的循环结构。 -...
-ffreestanding按独立环境编译,该环境可以没有标准库,且对main()函数没有要求。最典型的例子就是操作系统内核。该选项隐含设置了 -fno-builtin,且与 -fno-hosted 等价。仅可用于 CXXFLAGS 的选项:-fno-enforce-eh-specsC++标准要求强制检查异常违例,但是该选项可以关闭违例检查,从而减小生成代码的体积。该选项...
-fexternal-templates -fno-asm -fno-builtin -fno-strict-prototype -fsigned-bitfields -fsigned-char -fthis-is-variable -funsigned-bitfields -funsigned-char -fwritable-strings -traditional -traditional-cpp -trigraphs 编译时的警告选项 -fsyntax-only -pedantic -pedantic-errors -w -W ...
-ansi -fall-virtual -fcond-mismatch -fdollars-in-identifiers -fenum-int-equiv -fexternal-templates -fno-asm -fno-builtin -fhosted -fno-hosted -ffreestanding -fno-freestanding -fno-strict-prototype -fsigned-bitfields -fsigned-char -fthis-is-variable -funsigned-bitfields -funsigned-char -f...
# 定义编译参数 CFLAGS=-g -march=rv64imac -mabi=lp64 -nostdlib -fno-builtin LDFLAGS=#-T linker.ld # 定义文件名 SRC=main.S main.c OUT=main ELF=$(OUT).elf BIN=$(OUT).bin DISASM=$(OUT).disasm # 默认目标 all: $(DISASM)
-fno-asm -fno-builtin-function -fhosted -ffreestanding -fopenacc -fopenmp -fopenmp-simd -fms-extensions -fplan9-extensions -trigraphs -traditional -traditional-cpp -fallow-single-precision -fcond-mismatch -flax-vector-conversions -fsigned-bitfields ...
--ffreestanding 按独立环境编译,它包含声明了“-fno-builtin”选项,而且对main函数没有特别要求。宿主机环境下所有的标准库可用,main函数返回一个int值,典型的例子是除了BootLoader和内核以外几乎所有的程序。对应的独立环境不存在标准库,程序入口也不一定是main,最明显的例子就是BootLoader和操作系统内核。
-fno-strict-prototype 只对g++起作用,使用这个选项,g++将对不带参数的函数,都认为是没有显式的对参数的个数和类型说明,而不是没有参数. 而gcc无论是否使用这个参数,都将对没有带参数的函数,认为城没有显式说明的类型 -fthis-is-varialble 就是向传统c++看齐,能够使用this当一般变量使用. ...