<html><head><base href="x-msg://89/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">That is from 2.5, and just because there is nothing special listed in config.gcc does not mean it doesn't work.  For 2.5, the ARM port of llvm-gcc did not require a separate llvm-arm.cpp source file, so nothing needed to be added to config.gcc.  It worked fine as far as I know.<div><br></div><div>For 2.6, you will see that there are some ARM-related changes to config.gcc in llvm-gcc.</div><div><br><div><div>On Sep 30, 2009, at 9:44 AM, Jin Gu Kang wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div ocsi="x"><div dir="ltr"><font face="Tahoma" color="#000000" size="2">Hi Bob!</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">I could not find llvm file for ARM target in llvm-gcc 4.2 front end source code.</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">$llvm-gcc-src/gcc/config.gcc file</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr">alpha*-*-*)<br>  cpu_type=alpha<br>  need_64bit_hwint=yes<br># LLVM LOCAL begin<br>  out_cxx_file=alpha/llvm-alpha.cpp<br># LLVM LOCAL end                              <span class="Apple-converted-space"> </span><br>  ;;<br>...</div><div dir="ltr">arm*-*-*)<br>  cpu_type=arm<br>  extra_headers="mmintrin.h"<br>  ;;</div><div dir="ltr"><font face="times new roman">...</font></div><div dir="ltr">i[34567]86-*-*)<br>  cpu_type=i386<br># LLVM LOCAL begin<br>  out_cxx_file=i386/llvm-i386.cpp<br># LLVM LOCAL end                              <span class="Apple-converted-space"> </span><br>  # APPLE LOCAL begin 5612787 mainline sse4<br>    extra_headers="mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h<br>           pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h<br>           nmmintrin.h"</div><div dir="ltr"> </div><div dir="ltr"><font face="times new roman">(out_cxx_file variable is empty for ARM target)</font><br></div><div dir="ltr"><font face="times new roman">I wonder if llvm-gcc 4.2 front-end support bitcode conversion for ARM target.</font></div><div dir="ltr"><font face="times new roman"></font> </div><div dir="ltr"><font face="times new roman">Thank you.</font></div><div dir="ltr"><font face="times new roman"></font> </div><div dir="ltr"><font face="times new roman">Best regards,</font></div><div dir="ltr"><font face="times new roman"></font> </div><div dir="ltr"><font face="times new roman">Jin-Gu Kang</font></div><div dir="ltr"><font face="times new roman"></font> </div><div id="divRpF770230" style="direction: ltr; "><hr tabindex="-1"><font face="Tahoma" size="2"><b>From:</b><span class="Apple-converted-space"> </span>Bob Wilson [bob.wilson@apple.com]<br><b>Sent:</b><span class="Apple-converted-space"> </span>Thursday, October 01, 2009 1:23 AM<br><b>To:</b><span class="Apple-converted-space"> </span>Jin Gu Kang<br><b>Cc:</b><span class="Apple-converted-space"> </span><a href="mailto:llvmdev@cs.uiuc.edu">llvmdev@cs.uiuc.edu</a><br><b>Subject:</b><span class="Apple-converted-space"> </span>Re: [LLVMdev] long double type on ARM<br></font><br></div><div></div><div>Unlike llvm itself, llvm-gcc needs to be configured for a particular target architecture.  It looks like you're using a copy of llvm-gcc that was built to generate x86 code.<div><br><div><div>On Sep 30, 2009, at 6:27 AM, Jin Gu Kang wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span"><div><div dir="ltr"><font face="Tahoma" color="#000000" size="2">Dear LLVM members.</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">I am compiling coreutils-7.4 package for ARM linux using LLVM 2.5 version.</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">When i compiled 'od' program in coreutils package using LLVM 2.5,</font></div><div dir="ltr"><font face="tahoma" size="2">i could see the error message on llc processing.</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr">> llvm-gcc -emit-llvm  ./od.c  -c  -o  ./od.bc <span class="Apple-converted-space"> </span><em>-other-options...</em></div><div dir="ltr">> llc -march=arm ./od.bc -f -o ./od.s<br>llc: /home/jaykang10/HardDisk2/Projects/LLVM/src/llvm-2.5/lib/Target/TargetData.cpp:305: unsigned int llvm::TargetData::getAlignmentInfo(llvm::AlignTypeEnum, uint32_t, bool, const llvm::Type*) const: Assertion `AlignType == VECTOR_ALIGN && "Unknown alignment type!"' failed.</div><div dir="ltr"> </div><div dir="ltr"><font face="Tahoma" size="2">The problem was that</font></div><div dir="ltr"><font face="Tahoma" size="2"><font face="tahoma">when i converted 'od' source code to llvm bitcode,<span class="Apple-converted-space"> </span></font>long double type of 'od' source code was changed to x86_fp80 type in llvm bitcode and then llc on ARM target was not support x86_fp80 type. </font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">I think that long double type on ARM is 8 byte. (same as double type)</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">When we use llvm on ARM target,(or other target not support x86_fp80)</font></div><div dir="ltr"><font size="2"><font face="tahoma">i think it might be better to</font><font face="tahoma"> convert long double type in C to double type in llvm bitcode on llvm-gcc or</font></font></div><div dir="ltr"><font face="tahoma" size="2">treat x86_fp80 type in llvm bitcode as double type on llc.</font></div><div dir="ltr"><font face="tahoma" size="2">(I wonder if we select the target at llvm-gcc build time)</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">I would like to know how to solve the above problem.</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">Thank you</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">Best regards,</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2">Jin-Gu Kang</font></div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="tahoma" size="2"></font> </div><div dir="ltr"><font face="Tahoma"></font> </div><div dir="ltr"><font face="times new roman"></font> </div>_______________________________________________<br>LLVM Developers mailing list<br><a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a><span class="Apple-converted-space"> </span>        <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br></div></span></blockquote></div><br></div></div></div></span><br class="Apple-interchange-newline"></blockquote></div><br></div></body></html>