diff --git a/docs/FAQ.html b/docs/FAQ.html index b67fae3abe5..62a5046c107 100644 --- a/docs/FAQ.html +++ b/docs/FAQ.html @@ -311,11 +311,20 @@ clean and then make in the directory that fails to build.
For example, if you built LLVM with the command:
-gmake ENABLE_PROFILING=1 +
+% gmake ENABLE_PROFILING=1 ++
...then you must run the tests with the following commands:
-cd llvm/test
gmake ENABLE_PROFILING=1
+% cd llvm/test +% gmake ENABLE_PROFILING=1 ++
If the error is of the form:
gmake[2]: *** No rule to make target `/path/to/somefile', needed by `/path/to/another/file.d'.+
Stop. -
This may occur anytime files are moved within the CVS repository or removed @@ -471,11 +480,14 @@ find libcrtend.a.
The only way this can happen is if you haven't installed the runtime library. To correct this, do:
+ +- % cd llvm/runtime - % make clean ; make install-bytecode +% cd llvm/runtime +% make clean ; make install-bytecode
@@ -512,14 +524,20 @@ C++ support for a processor that does not otherwise have a C++ compiler.
Compile your program as normal with llvm-g++:
+% llvm-g++ x.cpp -o program ++
or:
+% llvm-g++ a.cpp -c +% llvm-g++ b.cpp -c +% llvm-g++ a.o b.o -o program +
With llvm-gcc3, this will generate program and program.bc. The .bc file is @@ -528,11 +546,19 @@ the LLVM version of the program all linked together.
Convert the LLVM code to C code, using the LLC tool with the C backend:
+% llc -march=c program.bc -o program.c ++
Finally, compile the c file:
+% cc x.c ++
+int X() { int i; return i; } +
Is compiled to "ret int undef" because "i" never has a value -specified for it. -
+Is compiled to "ret i32 undef" because "i" never has +a value specified for it.