public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@linux.intel.com>
To: sameeran joshi <gsocsameeran@gmail.com>
Cc: gcc@gcc.gnu.org
Subject: Re: Fuzzer extension for gcc
Date: Mon, 11 Jun 2018 08:06:00 -0000	[thread overview]
Message-ID: <20180611002043.GA11953@tassilo.jf.intel.com> (raw)
In-Reply-To: <CAKz4L0GsY_JDymdgmSNaZSCh+_UdFyNWNe6auwJR=rFgNcNj5Q@mail.gmail.com>

On Sun, Jun 10, 2018 at 12:49:44PM +0530, sameeran joshi wrote:
>    Hi all,I have been figuring out to work on some project,so while searching
>    I found fuzzer implementation project quite interesting,so please can I
>    get some information and links about the extension of fuzzer project for
>    gcc .
>    Can anyone help me please.

Hi,

The deadline for the Google Summer of code project this year has already passed,
so at least for this year it's not possible as a paid project.

However if you're still interested in working on it outside of SoC 
you're welcome of course.

The basic project is to extend an existing C language fuzzer, such
as https://embed.cs.utah.edu/csmith/ or
https://github.com/intel/yarpgen
to cover gcc language extensions,
run it against the compiler and report compiler crashes it finds.

For a description of the gcc language extensions please see 
https://gcc.gnu.org/onlinedocs/gcc-8.1.0/gcc/#toc-Extensions-to-the-C-Language-Family

In addition there are other extensions, such as OpenMP, or the
transactional memory extensions.
https://www.openmp.org/specifications/
https://gcc.gnu.org/wiki/TransactionalMemory

Tasks: 
- Investigate the documentation of some extensions and understand their scope
Pick a reasonable set to implement. For a short term project this
could be one or more simple extensions, or for a longer project this could be
a subset of a complex extension, such as a OpenMP
- Investigate the chosen extensions the code base of one the fuzzers
- Run fuzzing against the compiler
- See if it crashes the compiler or generates invalid output
- Investigate bug reports to see if they are not malformed
- Submit bugs

The main challenge of the project is to understand some extensions well
enough that you can implement a fuzzer and implement them 
in a way that the resulting randomly generated code is not malformed.

-Andi

      reply	other threads:[~2018-06-11  0:20 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-10 22:43 sameeran joshi
2018-06-11  8:06 ` Andi Kleen [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180611002043.GA11953@tassilo.jf.intel.com \
    --to=ak@linux.intel.com \
    --cc=gcc@gcc.gnu.org \
    --cc=gsocsameeran@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).