在 SPARC 平台上,如果数据未对齐导致失败,并且无法使用 –dalign 或 –xmemalign=8s 编译应用程序,则可以启用陷阱 6 为未对齐的数据提供处理程序。要在 SPARC 平台上启用陷阱 6,请执行以下操作:
.global trap6_handler_ .text .align 4 trap6_handler_: retl ta 6
my_system% fbe trap6_handler.s
fbe 是将从汇编语言源文件创建对象文件的命令。
从 Oracle Developer Studio 性能库调用的第一个可并行子例程将调用名为 trap6_handler_ 的例程。如果未指定 trap6_handler_,Oracle Developer Studio 性能库将调用不执行任何操作的默认处理程序。不提供处理程序来处理任何未对齐数据将会导致致命陷阱。
my_system% f95 any.f trap6_handler.o -library=sunperf