RealView - ARM Information Center
RealView - ARM Information Center
RealView - ARM Information Center
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
使 用 基 本 链 接 器 功 能使 用 胶 合 代 码 时 , 请 注 意 以 下 几 点 :• 不 能 将 所 有 胶 合 代 码 集 合 到 一 个 输 入 节 中 , 因 为 生 成 的 胶 合 代 码 输 入 节 可能 不 在 其 他 输 入 节 的 范 围 之 内 。 如 果 节 不 在 寻 址 范 围 内 , 则 不 可 能 使 用 长跳 转 功 能 。• armlink 自 动 生 成 与 位 置 无 关 的 胶 合 代 码 变 体 。 不 过 , 因 为 此 类 胶 合 代 码 大于 非 位 置 无 关 变 体 ,armlink 仅 在 必 要 时 ( 即 当 源 和 目 标 执 行 区 均 与 位 置 无关 或 密 切 相 关 的 情 况 下 ) 才 生 成 此 类 胶 合 代 码 。生 成 胶 合 代 码 是 为 了 优 化 代 码 大 小 。 因 此 ,armlink 按 以 下 优 先 顺 序 选 择 变 体 :1. 内 联 胶 合 代 码 。2. 短 跳 转 胶 合 代 码 。3. 长 胶 合 代 码 。3.3.9 在 重 叠 执 行 区 重 复 使 用 胶 合 代 码只 要 可 能 ,armlink 就 会 重 复 使 用 胶 合 代 码 。 但 是 , 重 复 使 用 时 必 须 强 制 满 足 以下 条 件 :• 重 叠 执 行 区 不 能 重 复 使 用 放 在 任 何 其 他 重 叠 执 行 区 中 的 胶 合 代 码• 其 他 任 何 执 行 区 都 不 能 重 复 使 用 放 在 重 叠 执 行 区 中 的 胶 合 代 码 。如 果 不 满 足 这 些 条 件 , 则 创 建 新 的 胶 合 代 码 , 而 不 重 复 使 用 现 有 胶 合 代 码 。 除 非已 使 用 分 散 加 载 指 示 链 接 器 将 胶 合 代 码 放 在 特 定 的 位 置 , 否 则 , 胶 合 代 码 始 终 放在 包 含 需 要 使 用 该 胶 合 代 码 的 调 用 的 执 行 区 中 。 这 意 味 着 :• 对 于 重 叠 执 行 区 , 它 的 所 有 胶 合 代 码 都 包 含 在 执 行 区 中• 重 叠 执 行 区 从 不 调 用 其 他 执 行 区 中 的 胶 合 代 码 。3.3.10 跳 转 内 联armlink 对 所 有 程 序 代 码 具 有 全 局 可 见 度 , 因 此 可 以 执 行 一 些 附 加 跳 转 优 化 。armlink 使 用 跳 转 内 联 来 优 化 映 像 中 的 小 函 数 调 用 。 小 函 数 定 义 为 可 内 联 到 4 字节 的 BL 或 BLX 指 令 的 任 何 单 指 令 函 数 。 在 这 种 情 况 下 , 不 存 在 跳 转 , 因 此 返 回 地址 是 多 余 的 。注 意缺 省 情 况 下 此 跳 转 优 化 是 关 闭 的 , 因 为 启 用 该 功 能 会 更 改 映 像 , 从 而 可 能 导 致 调试 信 息 不 正 确 。 如 果 启 用 , 则 链 接 器 不 会 尝 试 更 正 调 试 信 息 。3-20 版 权 所 有 © 2007 <strong>ARM</strong> 公 司 。 保 留 所 有 权 利 。 <strong>ARM</strong> DUI 0349AC