Differences between revisions 1 and 2
Revision 1 as of 2006-07-13 00:16:28
Size: 1971
Editor: server1
Comment:
Revision 2 as of 2008-01-10 19:38:38
Size: 1974
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
 * the ["old loop optimizer"] should go away  * the [[old_loop_optimizer]] should go away
Line 15: Line 15:
 * moving ["Simplifications"] on RTL to simplify-rtx.c  * moving [[Simplifications]] on RTL to simplify-rtx.c
Line 18: Line 18:
 * move libgcc to the toplevel (long term, but [:ZackWeinberg:Zack Weinberg] has already tried twice to convince me subliminally)  * move libgcc to the toplevel (long term, but [[ZackWeinberg|Zack Weinberg]] has already tried twice to convince me subliminally)
Line 25: Line 25:
 * Removing the old scheduler description, done together with [:StevenBosscher:Steven Bosscher] and Richard Sandiford.  * Removing the old scheduler description, done together with [[StevenBosscher|Steven Bosscher]] and Richard Sandiford.
Line 29: Line 29:
 * Some cleanups on [:Simplifications:RTL simplification] code.  * Some cleanups on [[Simplifications|RTL simplification]] code.

The Wiki says I should "Describe Paolo Bonzini here".

I hack on GCC in my free time... My projects include:

  • Getting rid of RTL optimizers, or actually targeting them at low-level optimization
  • the old_loop_optimizer should go away

  • CSE should do different work, because with tree-ssa it gets much different rtl
  • libcalls should go away, they are hiding interesting low-level details
  • multi-word subregs should be lowered to regs very early
  • CSE should do less work, smaller passes should do what CSE does:
  • finding unnecessary paradoxical subregs
  • run simplify_rtx with definitions across different basic blocks, to subsume what cse-follow-jumps and cse-skip-blocks do

  • instruction selection should not be done as combine does it now (there should be a tree combiner)
  • regmove is another behemoth, maybe it should be split into multiple passes but I do not care much about that
  • Cleaning up code, for example...
  • moving Simplifications on RTL to simplify-rtx.c

  • Hacking the toplevel build system, to
  • enable toplevel bootstrap (almost there)
  • move libgcc to the toplevel (long term, but Zack Weinberg has already tried twice to convince me subliminally)

  • move multilibbing to the toplevel (pie-in-the-sky)
  • Doing some vectorization work
  • Doing what people convince me is intersting
  • I have done some hacking with Richard Guenther to improve code generation, when SSE is used for math.

My current contributions to GCC include:

  • Removing the old scheduler description, done together with Steven Bosscher and Richard Sandiford.

  • Part of the current implementation of AltiVec, built on former work by Aldy Hernandez and Zem Laski.

  • The pass that lowers vector operations to scalars, for targets without SIMD hardware
  • Toplevel bootstrap
  • Some cleanups on RTL simplification code.

  • Using the pass manager for RTL passes as well

None: PaoloBonzini (last edited 2008-01-10 19:38:38 by localhost)