Skip to content
Snippets Groups Projects
Commit 70c64ae2 authored by Benedikt Huber's avatar Benedikt Huber
Browse files

platin: update README

parent 27ad703c
No related branches found
No related tags found
No related merge requests found
...@@ -17,6 +17,7 @@ Basic Usage ...@@ -17,6 +17,7 @@ Basic Usage
----------- -----------
* Compile test program * Compile test program
echo 'volatile int out; __attribute__((noinline)) void f(int x) { int i; for(i = 0; i<1024;i++) out+=x; } ' > test.c echo 'volatile int out; __attribute__((noinline)) void f(int x) { int i; for(i = 0; i<1024;i++) out+=x; } ' > test.c
echo 'int main() { f(3); f(5); return 0; }' >> test.c echo 'int main() { f(3); f(5); return 0; }' >> test.c
patmos-clang -Wall -mserialize=test.pml -mpreemit-bitcode=test.bc -o test test.c patmos-clang -Wall -mserialize=test.pml -mpreemit-bitcode=test.bc -o test test.c
...@@ -38,34 +39,30 @@ Basic Usage ...@@ -38,34 +39,30 @@ Basic Usage
platin wcet --use-trace-facts --trace-entry main --analysis-entry f -i test.pml -b test --enable-wca --report platin wcet --use-trace-facts --trace-entry main --analysis-entry f -i test.pml -b test --enable-wca --report
Demo of individual tools LLVM Options
------------------------ ------------
CodeGen/Passes:
MORE TO COME
(1) Context-sensitive trace analysis
platin analyze-trace -i bin/jumptable.elf.pml bin/jumptable.elf --callstring-length 1 --analysis-entry=main
* -mserialize=FILE
* -mpreemit-bitcode=FILE
* -mserialize-roots=LIST
Known Problems Known Problems
-------------- --------------
* tool chain problems * tool chain problems
mrtc/whet -O0: Needs math libraries => problem with atan function - mrtc/whet -O0: Needs math libraries => problem with atan function
LLVM Integration Demo of individual tools
================ ------------------------
Options MORE TO COME
-------
CodeGen/Passes: -mserialize, -mserialize-roots, -mpreemit-bitcode
Architectures Architectures
============= =============
Notes for ARM: Notes for ARM (not up-to-date)
------------------------------
# Install ARM crosscompiler (Ubuntu) # Install ARM crosscompiler (Ubuntu)
# sudo aptitude install gcc-arm-linux-gnueabi libc6-dev-armel-cross # sudo aptitude install gcc-arm-linux-gnueabi libc6-dev-armel-cross
...@@ -92,5 +89,5 @@ Notes for ARM: ...@@ -92,5 +89,5 @@ Notes for ARM:
$GEM5_HOME/build/ARM/gem5.opt --debug-flags=Exec,-ExecMicro,ExecMacro --trace-file=$1.trace \ $GEM5_HOME/build/ARM/gem5.opt --debug-flags=Exec,-ExecMicro,ExecMacro --trace-file=$1.trace \
$GEM5_HOME/configs/example/se.py -c bin/$1.elf $GEM5_HOME/configs/example/se.py -c bin/$1.elf
# Analyze using platin # Analyze using platin (pseudo costs)
platin bench-trace --disable-ait --trace-file m5out/$1.trace --outdir out -o out/$1.pml --binary bin/$1.elf bin/$1.pml platin wcet --disable-ait --trace-file m5out/$1.trace --outdir out -b bin/$1.elf -i bin/$1.pml --report
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment