Hexagon LLVM编译架构介绍(2)

240 篇文章 11 订阅

2 入门

2.1 概述

本章解释了如何使用 LLVM 编译器构建和执行一个简单的 C 程序。

该程序使用 Hexagon 软件开发工具构建,并在 Hexagon 模拟器上执行。

注意:
假设您的计算机上已安装 Hexagon 软件开发工具。 这些工具是组装和链接已编译程序所必需的。

2.2 创建源文件

创建以下 C 源文件:

#include <stdio.h>
int main()
{
printf(“Hello world\n”);
return(0);
}

将文件另存为 hello.c 。

2.3 编译程序

使用以下命令编译程序:

hexagon-clang hello.c -o hello

这会将 C 源文件 hello.c 转换为可执行文件 hello 。

2.4 执行程序
要执行该程序,请使用以下命令:

hexagon-sim hello

该程序在终端中输出其消息:

Hello world

在程序输出之后是模拟器生成的消息“Done! ”和一些执行统计:

Done!
T0: Insns=5648 Tcycles=7931
T1: Insns=0 Tcycles=0
T2: Insns=0 Tcycles=0
Total: Insns=5648 Pcycles=47587
Simulator speed=0.314599 Mips
Ratio to Real Time (600 MHz) = ~1/226 (elapsed time = 0.017953s)

统计数据显示在每个 Hexagon 处理器线程上执行的指令和周期数。

您现在已经使用 LLVM 编译器编译并执行了一个 C 程序。 有关使用编译器的更多信息,请参见以下章节。

3 使用编译器

3.1 概述

LLVM 编译器将 C 和 C++ 程序翻译成 Hexagon 处理器代码。

C 和 C++ 程序存储在源文件中,这些文件是用文本编辑器创建的文本文件。 Hexagon 处理器代码存储在目标文件中,目标文件是由链接器处理的二进制文件。

本章涵盖以下主题

  • 启动编译器
  • 输入输出文件
  • 编译器选项
  • 警告和错误消息
  • 使用代码优化
  • 安全编程支持

3.2 启动编译器

要从命令行启动 C 编译器,请键入:

hexagon-clang [options...] input_files...

要从命令行启动 C++ 编译器,请键入:

hexagon-clang++ [options...] input_files...

编译器在命令行上接受一个或多个输入文件。 输入文件可以是 C/C++ 源文件或目标文件。 例如:

hexagon-clang hello.c mylib.c

命令开关用于控制各种编译器选项(第 3.4 节)。 一个开关由一个破折号(‘ - ’)后跟一个开关名称和可选参数组成。

开关区分大小写,必须至少用一个空格隔开。 例如:

hexagon-clang hello.c -o hello

要列出可用的命令选项,请使用 --help 选项:

hexagon-clang --help
hexagon-clang++ --help

此选项使编译器显示命令行语法,后跟可用命令选项的列表。

注意:
clang 是 LLVM 编译器框架的前端驱动程序的名称。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值