12.07.2015 Views

RealView - ARM Information Center

RealView - ARM Information Center

RealView - ARM Information Center

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

使 用 基 本 链 接 器 功 能3.5 使 用 命 令 行 选 项 处 理 C++ 异 常缺 省 情 况 下 , 或 如 果 指 定 选 项 --exceptions, 则 映 像 可 以 包 含 异 常 表 。 如 果 无 代码 抛 出 异 常 , 则 自 动 丢 弃 异 常 表 。 但 是 , 如 果 已 指 定 选 项 --no_exceptions, 并 且在 删 除 未 使 用 节 之 后 出 现 任 何 异 常 节 , 则 链 接 器 会 生 成 一 则 错 误 消 息 。如 果 需 要 确 保 您 的 代 码 不 出 现 异 常 , 请 使 用 --no_exceptions 选 项 。 链 接 器 将 生 成一 则 错 误 消 息 以 突 出 显 示 已 找 到 的 异 常 , 并 且 不 生 成 最 终 映 像 。不 过 , 您 可 以 将 --no_exceptions 选 项 和 --diag_warning 选 项 结 合 使 用 , 将 错 误 消息 降 级 为 警 告 。 链 接 器 会 生 成 最 终 映 像 , 但 也 会 生 成 一 则 消 息 , 警 告 您 发 现 了 异常 。链 接 器 可 以 为 包 含 调 试 帧 信 息 的 传 统 对 象 创 建 异 常 表 。 链 接 器 可 以 为 C 和 汇 编语 言 对 象 安 全 地 进 行 此 操 作 。 缺 省 情 况 下 , 链 接 器 不 创 建 异 常 表 。 这 与 使 用 链接 器 选 项 --exceptions_tables=nocreate 的 结 果 相 同 。使 用 链 接 器 选 项 --exceptions_tables=unwind, 链 接 器 可 以 通 过 .debug_frame 信 息为 不 带 异 常 表 的 映 像 中 的 每 个 节 创 建 一 个 寄 存 器 恢 复 展 开 表 。 如 果 无 法 创 建 ,链 接 器 将 改 为 创 建 非 展 开 表 。使 用 链 接 器 选 项 --exceptions_tables=cantunwind 可 为 不 带 异 常 表 的 映 像 中 的 每 个节 创 建 一 个 非 展 开 表 。注 意有 以 下 几 点 需 要 注 意 :• 使 用 缺 省 设 置 ( 即 --exceptions --exception_tables=nocreate) 时 , 通 过 C 代码 或 汇 编 代 码 抛 出 异 常 是 不 安 全 的 ( 除 非 使 用 --exceptions 选 项 编 译 C 代码 )。• 针 对 不 带 异 常 支 持 的 已 编 译 C++ 代 码 ( 例 如 , 使 用 RVCT v1.2 编 译 的 任 何代 码 , 或 在 RVCT 3.0 中 使 用 --no_exceptions 选 项 编 译 的 代 码 ), 链 接 器 不能 生 成 清 除 其 中 的 自 动 变 量 的 代 码 。3-30 版 权 所 有 © 2007 <strong>ARM</strong> 公 司 。 保 留 所 有 权 利 。 <strong>ARM</strong> DUI 0349AC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!