<div dir="ltr"><div>Hi John,<br>Yes I am working with Nikhil.<br>I compiled Clang 3.2 in Cygwin using gcc ( note- with clang there were lot of errors during compilation). Going ahead, Installation is successful for me.<br><br></div><div>However there new issue with SAFECode clang installed in cygwin.<br><br></div><div>If you check below snippet it looks like clang invoke gcc which in-turn fails to recognize ‘-fmemsafety’ and so sample.exe is not created.<br></div><div>Any clue why clang fallback to gcc ? On my linux machine I do not see gcc invocation. <br></div><div><br>==============<br>$ clang -v -g -fmemsafety -o sample sample.c -L/home/kpawar/SAFECode/LLVM_INSTALL/lib -I/home/kpawar/SAFECode/LLVM_INSTALL/include<br>clang version 3.2 (: <a href="http://llvm.org/svn/llvm-project/safecode/branches/release_32/tools/clang">http://llvm.org/svn/llvm-project/safecode/branches/release_32/tools/clang</a>) (llvm/branches/release_32 ^/llvm/branches/release_32 250143)<br>Target: i386-pc-cygwin<br>Thread model: posix<br> "/home/kpawar/SAFECode/LLVM_INSTALL/bin/clang" -cc1 -triple i386-pc-cygwin -S -disable-free -main-file-name sample.c -mrelocation-model static -mdisable-fp-elim -fmath-errno -mconstructor-aliases -target-cpu pentium4 -target-linker-version 2.25.2 -momit-leaf-frame-pointer -v -g -resource-dir /home/kpawar/SAFECode/LLVM_INSTALL/bin/../lib/clang/3.2 -I /home/kpawar/SAFECode/LLVM_INSTALL/include -fmodule-cache-path /var/tmp/clang-module-cache -fno-dwarf-directory-asm -fdebug-compilation-dir /home/kpawar/Documents -ferror-limit 19 -fmessage-length 237 -fmemsafety -mstackrealign -fno-use-cxa-atexit -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/sample-T1WCmN.s -x c sample.c<br>clang -cc1 version 3.2 based upon LLVM 3.2svn default target i386-pc-cygwin<br>ignoring nonexistent directory "/usr/local/include"<br>#include "..." search starts here:<br>#include <...> search starts here:<br> /home/kpawar/SAFECode/LLVM_INSTALL/include<br> /home/kpawar/SAFECode/LLVM_INSTALL/bin/../lib/clang/3.2/include<br> /usr/include/w32api<br> /usr/include<br>End of search list.<br> "<b>/usr/bin/gcc" -v -fmemsafety -L/home/kpawar/SAFECode/LLVM_INSTALL/lib -I /home/kpawar/SAFECode/LLVM_INSTALL/include -c -m32 -o /tmp/sample-5Zz17i.o -x assembler /tmp/sample-T1WCmN.s<br>Using built-in specs.</b><br>COLLECT_GCC=/usr/bin/gcc<br>gcc: error: unrecognized command line option ‘-fmemsafety’<br>Target: i686-pc-cygwin<br>Configured with: /cygdrive/i/szsz/tmpp/gcc/gcc-4.9.3-1.i686/src/gcc-4.9.3/configure --srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-4.9.3-1.i686/src/gcc-4.9.3 --prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc --docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C --build=i686-pc-cygwin --host=i686-pc-cygwin --target=i686-pc-cygwin --without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib --enable-shared --enable-shared-libgcc --enable-static --enable-version-specific-runtime-libs --enable-bootstrap --enable-__cxa_atexit --with-dwarf2 --with-arch=i686 --with-tune=generic --disable-sjlj-exceptions --enable-languages=ada,c,c++,fortran,java,lto,objc,obj-c++ --enable-graphite --enable-threads=posix --enable-libatomic --enable-libgomp --disable-libitm --enable-libquadmath --enable-libquadmath-support --enable-libssp --enable-libada --enable-libjava --enable-libgcj-sublibs --disable-java-awt --disable-symvers --with-ecj-jar=/usr/share/java/ecj.jar --with-gnu-ld --with-gnu-as --with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix --without-libintl-prefix --with-system-zlib --enable-linker-build-id<br>Thread model: posix<br>gcc version 4.9.3 (GCC)<br>clang: error: assembler (via gcc) command failed with exit code 1 (use -v to see invocation)<br><br>============<br></div><div><br></div>~ Kiran<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 14, 2015 at 7:06 PM, John Criswell <span dir="ltr"><<a href="mailto:jtcriswel@gmail.com" target="_blank">jtcriswel@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Dear Kiran,<br>
<br>
Egads! It looks like /usr/bin/clang is crashing. This isn't a
bug in SAFECode; it's a bug in Clang.<br>
<br>
What version of Clang are you using in Cygwin to compile SAFECode?<br>
<br>
One thing you should try is compiling Clang 3.2 in Cygwin (either
using gcc or clang). SAFECode Clang is standard Clang modified
with a few new command-line options to run the SAFECode
transformation passes. If unmodified Clang 3.2 won't compile on
Cygwin, then SAFECode Clang for LLVM 3.2 won't compile either.<br>
<br>
BTW, are you working with Nikhil?<br>
<br>
Regards,<br>
<br>
John Criswell<div><div class="h5"><br>
<br>
<br>
On 10/13/15 11:29 PM, kiran pawar wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">
<div>
<div>Hi John,<br>
</div>
That worked for me. I am using llvm 3.2 only and following <a href="http://safecode.cs.illinois.edu/docs/Install.html" target="_blank"></a><a href="http://safecode.cs.illinois.edu/docs/Install.html" target="_blank">http://safecode.cs.illinois.edu/docs/Install.html</a><br>
<br>
</div>
<div>So for I am able to make inside llvm/projects/poolalloc by
doing such cosmetic changes.<br>
</div>
<div>Now, when I tried to make inside llvm/projects/safecode, I
see another error.<br>
</div>
<div><br>
kpawar@KPAWAR-LT ~/SAFECode/LLVM_SRC/llvm/projects/safecode<br>
$ /usr/bin/clang -cc1 -triple i386-pc-windows-cygnus -emit-obj
-disable-free -disable-llvm-verifier -main-file-name
Parser.cpp -mrelocation-model static -relaxed-aliasing
-fmath-errno -masm-verbose -mconstructor-aliases -target-cpu
pentium4 -target-linker-version 2.25 -dwarf-column-info
-coverage-file
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-resource-dir /usr/bin/../lib/clang/i686-pc-cygwin/3.5.2
-dependency-file
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.d.tmp
-MP -MT
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-MT
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.d
-D _DEBUG -D _GNU_SOURCE -D __STDC_CONSTANT_MACROS -D
__STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -D SAFECODE -D
SAFECODE -I /home/kpawar/SAFECode/LLVM_SRC/llvm/include -I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-O3 -Woverloaded-virtual -Wcast-qual -Wall -Wno-deprecated
-Wall -Wno-long-long -Wall -W -Wno-unused-parameter
-Wwrite-strings -Wcovered-switch-default -pedantic
-fdebug-compilation-dir
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse
-ferror-limit 19 -fmessage-length 271
-fvisibility-inlines-hidden -mstackrealign -fno-rtti
-fobjc-runtime=gcc -fdiagnostics-show-option
-fcolor-diagnostics -vectorize-loops -vectorize-slp -o
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-x c++ tools/clang/lib/Parse/Parser.cpp<br>
<b>Stack dump:</b><br>
0. Program arguments: /usr/bin/clang -cc1 -triple
i386-pc-windows-cygnus -emit-obj -disable-free
-disable-llvm-verifier -main-file-name Parser.cpp
-mrelocation-model static -relaxed-aliasing -fmath-errno
-masm-verbose -mconstructor-aliases -target-cpu pentium4
-target-linker-version 2.25 -dwarf-column-info -coverage-file
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-resource-dir /usr/bin/../lib/clang/i686-pc-cygwin/3.5.2
-dependency-file
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.d.tmp
-MP -MT
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-MT
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.d
-D _DEBUG -D _GNU_SOURCE -D __STDC_CONSTANT_MACROS -D
__STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -D SAFECODE -D
SAFECODE -I /home/kpawar/SAFECode/LLVM_SRC/llvm/include -I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-I
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/poolalloc/include
-O3 -Woverloaded-virtual -Wcast-qual -Wall -Wno-deprecated
-Wall -Wno-long-long -Wall -W -Wno-unused-parameter
-Wwrite-strings -Wcovered-switch-default -pedantic
-fdebug-compilation-dir
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse
-ferror-limit 19 -fmessage-length 271
-fvisibility-inlines-hidden -mstackrealign -fno-rtti
-fobjc-runtime=gcc -fdiagnostics-show-option
-fcolor-diagnostics -vectorize-loops -vectorize-slp -o
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/Release+Asserts/Parser.o
-x c++ tools/clang/lib/Parse/Parser.cpp<br>
1.
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include/clang/Sema/DeclSpec.h:855:3:
current parser token 'SourceLocation'<br>
2.
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include/clang/Sema/DeclSpec.h:38:1:
parsing namespace 'clang'<br>
3.
/home/kpawar/SAFECode/LLVM_SRC/llvm/projects/safecode/tools/clang/lib/Parse/../../include/clang/Sema/DeclSpec.h:783:1:
parsing struct/union/class body 'UnqualifiedId'<br>
<br>
<br>
<br>
</div>
~ Kiran<br>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Oct 13, 2015 at 11:16 PM, John
Criswell <span dir="ltr"><<a href="mailto:jtcriswel@gmail.com" target="_blank">jtcriswel@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Dear Kiran,<br>
<br>
Which version of LLVM/SAFECode are you using? Is it
LLVM 3.2?<br>
<br>
I'm guessing that you're using LLVM 3.2 and trying to
compile safecode/tools/LTO (that's the only component
that links in AssistDS.a). You could try changing the
following line:<br>
<br>
$(PROJ_OBJ_ROOT)/$(BuildMode)/lib/libAssistDS.a:
$(POOLALLOC_OBJDIR)/$(BuildMode)/lib/AssistDS.a<br>
<br>
... to:<br>
<br>
$(PROJ_OBJ_ROOT)/$(BuildMode)/lib/libAssistDS.a:
$(POOLALLOC_OBJDIR)/$(BuildMode)/lib/libAssistDS.a<br>
<br>
You'll need to fix the problem for other libraries for
which SAFECode creates links in its own object tree
(such as libpoolalloc.a).<br>
<br>
That might fix the problem on Cygwin.<br>
<br>
Regards,<br>
<br>
John Criswell
<div>
<div><br>
<br>
On 10/13/15 2:36 AM, kiran pawar via llvm-dev wrote:<br>
</div>
</div>
</div>
<blockquote type="cite">
<div>
<div>
<div dir="ltr">
<div>
<div>
<div>
<div>Hi,<br>
</div>
On Linux I observed<br>
<br>
[root@localhost poolalloc]# find . -name *.a<br>
./Release+Asserts/lib/LLVMDataStructure.a<br>
./Release+Asserts/lib/poolalloc.a<br>
./Release+Asserts/lib/AssistDS.a<br>
./Release+Asserts/lib/libpoolalloc_fl_rt.a<br>
./Release+Asserts/lib/libpoolalloc_rt.a<br>
./Release+Asserts/lib/libpa_pre_rt.a<br>
./Release+Asserts/lib/libcount.a<br>
<br>
<br>
</div>
On cygwin I observed <br>
<br>
kpawar@KPAWAR-LT
~/SAFECode/LLVM_SRC/llvm/projects/poolalloc<br>
$ find . -name *.a<br>
./Release+Asserts/lib/libAssistDS.a<br>
./Release+Asserts/lib/libcount.a<br>
./Release+Asserts/lib/libLLVMDataStructure.a<br>
./Release+Asserts/lib/libpa_pre_rt.a<br>
./Release+Asserts/lib/libpoolalloc.a<br>
./Release+Asserts/lib/libpoolalloc_fl_rt.a<br>
./Release+Asserts/lib/libpoolalloc_rt.a<br>
./Release+Asserts/lib/libtypechecks_rt.a<br>
<br>
<br>
</div>
This creates issue to llvm/safecode since it
tries to search libraries named as poolalloc.a,
AssistDS.a etc. Any solution for this ?<br>
<br>
</div>
~ Kiran<br>
<div>
<div><br>
<br>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
</div>
</div>
<pre>_______________________________________________
LLVM Developers mailing list
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><span><font color="#888888">
</font></span></pre>
<span><font color="#888888"> </font></span></blockquote>
<span><font color="#888888"> <br>
<br>
<pre cols="72">--
John Criswell
Assistant Professor
Department of Computer Science, University of Rochester
<a href="http://www.cs.rochester.edu/u/criswell" target="_blank">http://www.cs.rochester.edu/u/criswell</a></pre>
</font></span></div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<br>
<pre cols="72">--
John Criswell
Assistant Professor
Department of Computer Science, University of Rochester
<a href="http://www.cs.rochester.edu/u/criswell" target="_blank">http://www.cs.rochester.edu/u/criswell</a></pre>
</div></div></div>
</blockquote></div><br></div>