參考:
0. 環境安裝(用的docker)
docker pull xyzsam/gem5-aladdin
docker run -it --rm --mount source=gem5-aladdin-workspace,target=/workspace xyzsam/gem5-aladdin
1.使用go to /your/path/to/llvm-tracer/example/triad
export workload=triad
export tracer_home=/your/path/to/llvm-tracer
# 第乙個出錯點:clang路徑是$/lib/clang/6.0.0/include,教程裡寫的6.0
$/bin/get-labeled-stmts triad.c -- -i$/lib/clang/6.0.0/include
clang -g -o1 -s -fno-slp-vectorize -fno-vectorize -fno-unroll-loops -fno-inline -emit-llvm -o triad.llvm triad.c
# 第二個出錯點:full_trace.so在$/build/full-trace下
# -trace-all-callees是可選項,我沒有加,預設是false
opt -s -load=
$/build/full-trace/full_trace.so -fulltrace -labelmapwriter triad.llvm -o triad-opt.llvm
llc -filetype=asm -o full.s full.llvm
# 第三個出錯點:困了我蠻久,算是個小坑兒,最後很玄學的解決了……
g++ -fno-inline -o triad-instrumented full.s -lm -lz -no-pie
./triad-instrumented
注:幾乎每一步都會生成不同的檔案,可以每執行一句後,ls
檢視triad資料夾裡的變化 SVN使用使用教程
本人在公司孤兒式開發,是用不到svn這種工具的,但是怕突然某一天電腦壞掉,消失所以還是使用上 管理工具。簡單概括一下svn它是 幹什麼的 一群人寫 每乙個人寫的部分都不一樣,但是專案是乙個整體,每個人的 需要合到一起才是乙個完整的專案,但是每乙個人寫的 又不可能出現在其他人的電腦上,所以使用svn專...
Git使用教程
提起git,大家無疑會想到github,沒錯,我就是通過眾多的github專案鏈結了解到的git,不知你是否也在走這條路呢?如果是的話,本文有一些有用的總結性文字以及一些 git教程 可以教會你如何去使用 git.當然,這些對 github 同樣適用.這裡我又翻到了個幻燈片,可以供大家 寫給大家的 ...
mii tool使用教程
mii tool 這是專門設定網絡卡工作模式的命令 1.檢視網絡卡的工作模式,輸入命令 mii tool v eth0 negotiated 100basetx fd,link ok product info vendor 00 05 be,model 8 rev 0 basic status au...