From bf9f72062802a1693ab3223d2ebdf6639b0566df Mon Sep 17 00:00:00 2001 From: John Regehr Date: Tue, 28 Jun 2011 14:49:23 -0600 Subject: [PATCH] Write a description of this tool. --- utah/scripts/reduce/c_delta.pl | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/utah/scripts/reduce/c_delta.pl b/utah/scripts/reduce/c_delta.pl index 1d5931e85..e4f6c7af4 100755 --- a/utah/scripts/reduce/c_delta.pl +++ b/utah/scripts/reduce/c_delta.pl @@ -1,9 +1,27 @@ #!/usr/bin/perl -w +# This Delta debugger specifically targets C code. Its design point -- +# in two different senses -- is to be complementary to a line-based +# Delta like this one: +# +# http://delta.tigris.org/ +# +# First, c_delta aims for maximum reduction and specifically targets +# transformations not available to a language-independent Delta +# debugger, such as reordering function calls. +# +# Second, c_delta is stupid in the sense that it generates a lot of +# invalid code and also most of its changes do not reduce program size +# by a large amount. Thus, it is best used as a second pass with a +# faster Delta like the Berkeley one trimming the obviously irrelevant +# code. + use strict; use Regexp::Common; use re 'eval'; +# TODO: + # print stats for individual regexes # watch for unexpected abnormal compiler outputs