[llvm-dev] Bootstrapping clang/LLVM with ELLCC

Tim Northover via llvm-dev llvm-dev at lists.llvm.org
Fri Dec 18 19:34:53 PST 2015


On 18 December 2015 at 19:15, Richard Pennington via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> It turns out that it can with some simple patches.

This sounds really cool. I think we should seriously consider putting
these patches into LLVM mainline.

> Information on building clang/LLVM with ELLCC is here:
> http://ellcc.org/blog/?p=26397


Here are some of my thoughts on the patch there, with a view to upstreaming:

  * Large sections of the patch seem to be Makefile changes. Given
that we're deprecating autoconf, a CMake equivalent will be needed.
  * Unconditionally #defining _BSD_SOURCE doesn't feel right.
  * #undefining libc symbols based on __ELCC__. This looks like a musl
issue rather than just elcc. I'm actually rarther suspicious of musl
here too: neither C99 nor C++11 reserve (e.g.) fopen64. That said,
we've put in worse hacks to support broken platforms (see
-fms-compatibility).
  * sys/time.h: not sure this exists on all systems. What are we using
that depends on it and what guards does that source have?
  * "and" as an operator? I know C allows it, but it's highly
unidiomatic. </tiniest nit in the world>

Cheers.

Tim.


More information about the llvm-dev mailing list