graydon/rust — pull request #1409 by crabtw (2012-01-02 01:05:56+00:00)
Title: FreeBSD amd64 support

Before bootstrapping, it needs to install devel/libexecinfo and lang/gcc44+.

In order to enable segmented stacks, it also needs to patch LLVM.
This patch uses tcb_spare field in the tcb structure to store info.
For i386 arch there is no spare field so it can only work on amd64.

It currently failed on "modf(float::infinity, d2) == 0.0" and "pow(-1.0, float::infinity) == 1.0" in make check.

LLVM segmented stack patch:
http://people.cs.nctu.edu.tw/~jyyou/rust/bsd-seg-stack.diff
stage3 snapshot:
http://people.cs.nctu.edu.tw/~jyyou/rust/rust-stage0.tar.bz2