Vanessa McHale's blog (4)
  • Basic Blocks À La Appel

    by Vanessa McHale | Compilers

    Building a respectable compiler requires basic blocks in order for liveness analysis to be performant. Consider my own Apple compiler:

  • Elliptic Fourier Series in Apple

    by Vanessa McHale | Vector Languages

    I previously wrote about typing elliptic fourier series; my Apple compiler is now capable of computing the offsets and also the relevant coefficients.

  • Rosetta

    by Vanessa McHale | Vector Languages

    To compute a 7-day moving average:

  • Follow-up: Typed Elliptic Fourier Series

    by Vanessa McHale | Vector Languages

    As I wrote about previously I am working on a typed array language with the case of elliptic Fourier series as an example.

  • Infelicities With Traditional Compiler Architecture on X86

    by Vanessa McHale | Programming

    Compilers are written as a pipeline: in particular, instruction selection and register allocation are different phases. GHC, for instance, uses maximal munch for instruction selection and a variety of register allocators. However, on x86-64 (for instance), register allocation constrains the particular instruction encodings, which affects the cost of some instructions.

    |