摘要:
LLVM低级虚拟机 传统的编译器架构: Forntend前端:词法分析、语法分析、语义分析、生成中间代码 Optimizer优化器:中间代码生成 Backend后端:生成机器码 LLVM: 架构:不同的前端后端使用统一的中间代码LLVM Intermediate Representation (LL 阅读全文
摘要:
一、OC源文件的编译过程 1.编写一个main1.m文件, 2. 使用clang查看文件的编译过程 详细的步骤如下: (1)查看preprocessor预处理的结果: (2)词法分析,生成Token (3)语法分析,生成语法树(AST) 语法树AST: 阅读全文
摘要:
SPEC CPU2006中的打包工具packagetools的使用 1.使用packagetools工具进行打包 2.将打包好的工具,进行clone到其他地方,进行安装,测试看克隆过来的工具 之后会有什么错误,等到学到的时候再说吧, 好好的啊 阅读全文
摘要:
gdb调试clang: 开启gdb:gdb 2.打开clang:file clang;或者直接和上一步合并:gdb clang 3.设置跟踪分叉的子进程 4.获取编译参数:已知有一个text1.c文件,用clang进行编译(-v打印出编译时的参数) 5.设置gdb调试参数,并设置断点 6. 运行r 阅读全文
摘要:
1.下载spec cpu2006安装包 2.解压 3.找到install.sh,进行安装 如果安装成功:界面会提示安装成功 但是我的里面,缺少了一个包,所以出现报错: (查看官网,进行修改https://www.spec.org/cpu2006/Docs/tools-build.html) 4.修改 阅读全文
摘要:
SPEC CPU2006测试 将config中的配置文件中复制一个要测试的文件,测试clang性能 2.对配置文件test2.cfg进行修改 (1)修改路径 (2)添加编译选项 (3)进行测试: 编译运行”400” 出现400编译错误: 修改配置文件:test2.cfg(修改400的选项) (一些g 阅读全文
摘要:
1. 远程库 的名字就是origin,这是git默认的叫法,也可以改成别的,但origin这个名字一看就是远程库。 在github中创建一个git仓库(learngit) 把本地库的内容推送到远程,用git push命令,实际上是把当前的分支master推送到远程 由于远程库是空的,我们第一次推送m 阅读全文
摘要:
Git笔记 1. Git:分布式版本控制 集中式版本控制:必须联网才能工作,版本库是集中存放在中央服务器的,工作的时候用的是自己的电脑,要先从中央服务器取得最新的版本,工作结束后,把工作内容推送给中央服务器(中央服务器类似于一个图书馆,要改一本书,先从图书馆借出来,然后回家自己改,改完再放回图书馆) 阅读全文
摘要:
1.集合通信 (1)广播:是一对多通信的典型例子,调用格式如下: MPI_Bcast(Address,Count,Datatype,Root,Comm) 1 #include <stdio.h> 2 #include <mpi.h> 3 4 int main(int argc,char **argv 阅读全文