#!/bin/sh

# Filters are not run for post-test check commands.
# Filter everything here.

echo "---Status---"
echo "::status" | /usr/bin/mdb vgcore.* | \
perl -p -e 's/from \S*$/from .../' | \
perl -0 -p -e 's/^file: .+?^(initial argv:)/$1/ms' | \
sed '/^threading model:/ d' | \
perl -p -e 's/addr=[0-9A-Fa-f]+/addr=......../g'

echo "\n---Registers---"
echo "::regs" | /usr/bin/mdb vgcore.* | \
perl -p -e 's/(%[cdsefg]s)\s+=\s+0x[0-9A-Fa-f]+/$1 = 0x......../' | \
perl -p -e 's/%eip\s+=\s+0x[0-9A-Fa-f]+(.*)\+0x[0-9A-Fa-f]+$/%eip = 0x........ $1+0x......../' | \
sed '/%ebp/ d' | \
sed '/^%eflags/ d' | \
sed '/id=/ d' | \
sed '/status=/ d'

echo "\n---Stack trace---"
echo "::stack ! perl -p -e 's/^(\S+)\+.*/\$1/g'" | /usr/bin/mdb vgcore.*
