Sun Studio 12:C 用户指南

B.2.93.1 示例

在此例中,编译和链接在单独的步骤中进行:


cc -xipo -xO4 -o prog part1.c part2.c part3.c

优化器在三个源文件之间执行交叉文件内联。这是在最终链接步骤中完成的,因此源文件的编译不必全部在单个编译中进行,可以通过多个单独的编译来进行,且每个编译都要指定 -xipo

在此例中,编译和链接在单独的步骤中进行:


cc -xipo -xO4 -c part1.c part2.c
cc -xipo -xO4 -c part3.c
cc -xipo -xO4 -o prog part1.o part2.o part3.o

即使用 -xipo 编译,仍存在库不参与交叉文件过程间分析的约束,如下例所示:


cc -xipo -xO4 one.c two.c three.c
ar -r mylib.a one.o two.o three.o
...
cc -xipo -xO4 -o myprog main.c four.c mylib.a

在此例中,过程间调用优化是在以下例程之间执行的:one.ctwo.cthree.c 之间,main.c four.c 之间,但不在 main.cfour.cmylib.a 上的例程之间执行。(第一次编译可能产生未定义符号警告,但是由于它是编译与链接步骤,所以会执行过程间调用优化。)