summaryrefslogtreecommitdiffstats
path: root/intro.tex
diff options
context:
space:
mode:
authorn.ramanathan14 <n.ramanathan14@imperial.ac.uk>2020-09-13 20:08:53 +0000
committeroverleaf <overleaf@localhost>2020-09-13 20:14:00 +0000
commit20ab193a2d80f5995c74174abeaf01d002c3fbc7 (patch)
tree975329c04ed52af20ab170a3d98950fbe9ceed62 /intro.tex
parent22fdb92e4376f8d951701333f0e301200c74c375 (diff)
downloadfccm21_esrhls-20ab193a2d80f5995c74174abeaf01d002c3fbc7.tar.gz
fccm21_esrhls-20ab193a2d80f5995c74174abeaf01d002c3fbc7.zip
Update on Overleaf.
Diffstat (limited to 'intro.tex')
-rw-r--r--intro.tex15
1 files changed, 11 insertions, 4 deletions
diff --git a/intro.tex b/intro.tex
index 6d17fe9..1128706 100644
--- a/intro.tex
+++ b/intro.tex
@@ -23,12 +23,19 @@ It is even being used in high-assurance settings, such as financial services~\ci
To test the trustworthiness of HLS tools, we need a robust way of generating programs that both have good coverage and also explores various corner cases.
Therein lies the difficulty in testing HLS tools.
Human or unit testing may not achieve both these objectives, as HLS tools are often require complex inputs to trigger wrong behaviour.
-Hence, in this paper, we employ program fuzzing to perform automated testing of HLS tools.
+Hence, in this paper, we employ program fuzzing on HLS tools.
+
+Fuzzing is an automated testing method that provides unexpected, counter-intuitive and random programs to compilers to test their robustness~\cite{}.
Program fuzzing has been used extensively in testing software compilers.
-Most fuzzing tools randomly generate random C programs that are then provided to the compiler under test.
-Furthermore, fuzzing tools can be configured by users to generate and avoid particular patterns, which is important since HLS tools typically support a subset of C.
+For example, Yang \textit{et al.}~\cite{yang11_findin_under_bugs_c_compil} found more than 300 bugs in GCC and clang.
+Despite of the influence of fuzzing on software compilers, to the best of our knowledge, it has not been explored significantly within the HLS context.
+We specifically target HLS by restricting a fuzzer to generate programs that are a subset of C that HLS tools support.
+
+
+% Most fuzzing tools randomly generate random C programs that are then provided to the compiler under test.
+% Furthermore, fuzzing tools can be configured by users to generate and avoid particular patterns, which is important since HLS tools typically support a subset of C.
-Compiler Fuzzing is a popular technique to find bugs in programs, and it is especially effective at finding compiler bugs, as Yang \textit{et al.}~\cite{yang11_findin_under_bugs_c_compil} demonstrated by finding more than 300 bugs in GCC and clang. This technique can therefore also be used to find bugs in HLS tools. There has also been some prior work in trying to find bugs in HLS tools and also ensuring that synthesis tools output a correct design.
+% Compiler Fuzzing is a popular technique to find bugs in programs, and it is especially effective at finding compiler bugs, as This technique can therefore also be used to find bugs in HLS tools. There has also been some prior work in trying to find bugs in HLS tools and also ensuring that synthesis tools output a correct design.
% \NR{add a sentence about fuzzing}