From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id B9E503858D39 for ; Mon, 6 Mar 2023 16:25:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B9E503858D39 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678119920; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=T+K9PZQPju/AghYVpKt1NaSdtB/TACtVA85qvLv2v60=; b=ClPXPfRSs9+2miLarYR/eDyLqrAQFN5gdi2PP+alMkyAbPP4hdMC6BBrPZc9aSJMFNJLwE Uyyy7mSAJ8pK4BMGfarIy/WTHAS3X4FiuVsuL5tCvtLN2An4vngHxIzMHKbTQCEZVjhYZk 80WWYBq4I+LkIx0/wyuE/doGPvvayGE= Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-312-RzOAGNWePqS6yg-uL-wI2A-1; Mon, 06 Mar 2023 11:25:19 -0500 X-MC-Unique: RzOAGNWePqS6yg-uL-wI2A-1 Received: by mail-qt1-f200.google.com with SMTP id k13-20020ac8074d000000b003bfd04a3cbcso5453493qth.16 for ; Mon, 06 Mar 2023 08:25:19 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678119918; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=T+K9PZQPju/AghYVpKt1NaSdtB/TACtVA85qvLv2v60=; b=tCk82//G7EW9tL3h1Op5CFo+fy2nHmC7AgSbEJZmjC2g/UDZHm59ahGlZavOgiY5hD CJVnBP3SQXHIHvljt6tbhcoEQ4IklFOLPtf8VULy1EMOaiTO8Sww5z1BKOV1Z6F8rNGm TS415z8hq8YE+v+MO6q4Z0RvEGpIqlP8bjAQKY5wN60IT7FYr7hPgGb2QmhlcvTcJFRG IeMAyhNfTecMYuOeqm6oeIZrGA8KeF88UBJQBqkskJ0C6OQzE+Z3L7DmY+YG7GzodJLF 7rQVf/nCSh30Ildiwr9TMUWMdNWBNr5QpU227+FCQ+ojhtzsL3auQm8WB7F2tFsU84tZ CXQA== X-Gm-Message-State: AO0yUKUzfXwOtSjoauWhztdc5XJrk+VLGeUZOWdqn6NqtpesVL1S5NGr q7J80FltihhZQtpWkDz1n9iJV/tudAWNqB/hSfXfY2uW4jPMgmpVYAKrKWKuCT1QZ/5pxoXPC+t 39BTrgfs= X-Received: by 2002:a05:6214:1c46:b0:56f:376:c792 with SMTP id if6-20020a0562141c4600b0056f0376c792mr21509062qvb.45.1678119918599; Mon, 06 Mar 2023 08:25:18 -0800 (PST) X-Google-Smtp-Source: AK7set8tFYClZJTufcrpnUF2m+e9vK2yzIue3jy7dPh9GzmC3+e0joaF3wlZIlRIwxcV8XA/JF7d7A== X-Received: by 2002:a05:6214:1c46:b0:56f:376:c792 with SMTP id if6-20020a0562141c4600b0056f0376c792mr21509025qvb.45.1678119918296; Mon, 06 Mar 2023 08:25:18 -0800 (PST) Received: from t14s.localdomain (c-73-69-212-193.hsd1.ma.comcast.net. [73.69.212.193]) by smtp.gmail.com with ESMTPSA id g186-20020a37b6c3000000b007430494ab92sm7698702qkf.67.2023.03.06.08.25.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Mar 2023 08:25:17 -0800 (PST) Message-ID: Subject: Re: [GSOC] Looking for small patch/project to work on From: David Malcolm To: Rishi Raj , gcc@gcc.gnu.org Date: Mon, 06 Mar 2023 11:25:16 -0500 In-Reply-To: References: User-Agent: Evolution 3.44.4 (3.44.4-1.fc36) MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-5.7 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Sat, 2023-03-04 at 08:11 +0530, Rishi Raj via Gcc wrote: > Hi everyone, Hi, and welcome! >=20 > My name is Rishi Raj, and I am a third-year undergraduate studying > Computer > Science and Engineering at the Indian Institute of Technology > Kharagpur in > India. I wish to participate in this year's GSOC with GCC. >=20 > My progress so far: >=20 > =C2=A0=C2=A0 1. Successfully built the GCC from source using the installi= ng gcc > =C2=A0=C2=A0 guide. (I will run the test suite today.) > =C2=A0=C2=A0 2. Read about different configuration options during install= ations > and > =C2=A0=C2=A0 also went through the gcc-newbies-guide, which was an exciti= ng > read and > =C2=A0=C2=A0 provided an overview of how to proceed in gcc-contribution. = I want > to > =C2=A0=C2=A0 extend my appreciation to David for this. Thanks. You've already built GCC from source, which is a great start. A good thing to try next (if you haven't already) would be to try hacking in a warning that emits: "hello world, I'm compiling function 'foo'" for each function being compiled, and compile something with that... and then do it again in the debugger, with a breakpoint on that, and step through some of the code, as per: https://gcc-newbies-guide.readthedocs.io/en/latest/getting-started.html#hel= lo-world-from-the-compiler The point here is to get you and your development environment to the point where you can comfortably make a simple change to GCC's source, rebuild it and quickly see the results of your edits (without having to wait ages), and for you to get comfortable stepping through it in the debugger. Let me know if you run into issues (which could suggest improvements to the guide). >=20 > After reading about the suggested projects described on GCC's GSOC > page, I > found "Bypass assembler when generating LTO object files" and "C++: > Implement compiler built-in traits for the standard library traits" > interesting. Currently, I am examining the preliminary patch > https://gcc.gnu.org/ml/gcc/2014-09/msg00340.html=C2=A0for the first > project.=C2=A0 FWIW I'm not particularly expert at the specific areas of GCC relating to the two projects you mentioned, so hopefully others on this list can give advice/mentoring with those. > I > can work on a small project/patch after this in a day or two. I would > greatly appreciate your suggestions for the same. I'm biased here in favor of my own subproject, the static analyzer; as discussed in the recent "[GSoC][Static Analyzer] Ideas for proposal" thread on this list there are dozens of RFEs against the "analyzer" component in our bugzilla, many of which are relatively small. That said analyzer is quite complicated, so I don't know if that's a good first warm-up for someone who isn't planning to work on the analyzer for their GSoC project. We have an "easyhack" keyword in our bugzilla which you could try searching on that. Unfortunately, people's definitions of what is easy vary, and I don't think anyone's been curating that list recently, so you might want to check in here with the URLs of the things that catch your eye to make sure they're reasonable first projects. >=20 > I have taken compiler theory and laboratory courses as a part of my > institute curriculum. In the laboratory, we designed a tiny-c > compiler (a > subset of GCC). In theory, I learned about different phases of > compilations, various optimization techniques, etc. >=20 > Please find my course website link for a detailed overview: > https://cse.iitkgp.ac.in/~bivasm/compiler2022.html#Lecture >=20 > This course was the starting point of my interest in compiler > development, > and I want to take it further by making meaningful contributions to > GCC. I > hope to make some significant contributions to GCC this summer and in > the > future. I would appreciate any suggestions on taking on a small > patch/project or delving deeper into the projects I am interested in > pursuing. It sounds like you have a lot of relevant knowledge; I hope we can find you something you'll enjoy working on. Let me know if you have any questions Hope this is helpful; welcome again. Dave