Skip to content
Snippets Groups Projects
Commit 3ffa02b0 authored by Daniel Maier's avatar Daniel Maier
Browse files

perforate.sh: allow multi-level perforation

parent 504029cf
No related branches found
No related tags found
No related merge requests found
...@@ -12,6 +12,9 @@ usage() { ...@@ -12,6 +12,9 @@ usage() {
printf -- "-e, --extract extract scop\n" printf -- "-e, --extract extract scop\n"
printf -- "-p, --perforate perforate scop\n" printf -- "-p, --perforate perforate scop\n"
printf -- "-g, --generate generate perforated program\n" printf -- "-g, --generate generate perforated program\n"
printf -- "-s, --statement statement to perforate\n"
printf -- "-l, --level level to perforate\n"
} }
extract_scop() { extract_scop() {
...@@ -27,7 +30,7 @@ run_pluto() { ...@@ -27,7 +30,7 @@ run_pluto() {
} }
generate() { generate() {
$CLOOG -openscop "$1" >"$2" $CLOOG -openscop "$1" > "$2"
} }
# default values # default values
...@@ -89,7 +92,18 @@ if [ "$cmd_extract" = "yes" ]; then ...@@ -89,7 +92,18 @@ if [ "$cmd_extract" = "yes" ]; then
fi fi
if [ "$cmd_perforate" = "yes" ]; then if [ "$cmd_perforate" = "yes" ]; then
perforate "$scop" "$perforated" "$statement" "$level" perfin="$(mktemp)"
perfout="$(mktemp)"
cat "$scop" > "$perfin"
IFS="_"
for l in $level; do
IFS=""
perforate "$perfin" "$perfout" "$statement" "$l"
tmp="$perfin"
perfin="$perfout"
perfout="$tmp"
done
cat "$perfin" > "$perforated"
fi fi
if [ "$cmd_generate" = "yes" ]; then if [ "$cmd_generate" = "yes" ]; then
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment