--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs8ttsqeM4hXVvCwdXimx%3DfAmM0Hd%3DofBH%2BbMvDQ6CggiA%40mail.gmail.com.
Thanks for the info Bruce. That makes me think what are the advantages I have with llvm assembler over gcc? I could use gcc to do all the stuff I want. What is the motivation to use llvm to generate assembly and gcc to link?
The C extension is not yet supported by the built in llvm assembler. In the meantime you can tell llvm to output assembly language using the -S option and use gcc (or as/ld directly) to asssemble and link your final program.I've also found it's necessary to do this because the llvm built in assembler is not emitting the attribute to say whether the code is hard float or soft float (it's soft float only at the moment) and then the linker gets upset and complains about linking soft float and hard float code together. Going via a .s file and using the gny assembler works correctly.
On Fri, May 11, 2018 at 5:21 AM, Gnanasekar R <gnanase...@gmail.com> wrote:
Hi,I was able to build the llvm toolchain successfully in Release mode. I am building some code for RISC with llvm using the following options,-Os -march=rv32imc -mabi=ilp32When I use this with gcc i see a mix of 16-bit and 32-bit instruction getting generated. With LLVM I only see 32-bit instructions. Am i missing something in my compiler flags?
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+un...@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs8ttsqeM4hXVvCwdXimx%3DfAmM0Hd%3DofBH%2BbMvDQ6CggiA%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/096B93F4-8660-4336-8521-DBD9E5259E98%40gmail.com.
>> email to sw-dev+unsubscribe@groups.riscv.org.
>> To post to this group, send email to sw-...@groups.riscv.org.
>> Visit this group at
>> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
>> To view this discussion on the web visit
>> https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs8ttsqeM4hXVvCwdXimx%3DfAmM0Hd%3DofBH%2BbMvDQ6CggiA%40mail.gmail.com.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "RISC-V SW Dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sw-dev+unsubscribe@groups.riscv.org.
> To post to this group, send email to sw-...@groups.riscv.org.
> Visit this group at
> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
> To view this discussion on the web visit
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CA%2BwH295ojSCUEzyVw5Wj5MbXKEoVjAsWbEjW%2Bz07h61oAAtDCQ%40mail.gmail.com.
>> email to sw-dev+un...@groups.riscv.org.
>> To post to this group, send email to sw-...@groups.riscv.org.
>> Visit this group at
>> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
>> To view this discussion on the web visit
>> https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs8ttsqeM4hXVvCwdXimx%3DfAmM0Hd%3DofBH%2BbMvDQ6CggiA%40mail.gmail.com.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "RISC-V SW Dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sw-dev+un...@groups.riscv.org.
> To post to this group, send email to sw-...@groups.riscv.org.
> Visit this group at
> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
> To view this discussion on the web visit
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+un...@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
I'd like to clear up some confusion in this thread.
Could you please make sure you're using the latest upstream LLVM (i.e.
checked out from svn/git).
>> email to sw-dev+un...@groups.riscv.org.
>> To post to this group, send email to sw-...@groups.riscv.org.
>> Visit this group at
>> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
>> To view this discussion on the web visit
>> https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs8ttsqeM4hXVvCwdXimx%3DfAmM0Hd%3DofBH%2BbMvDQ6CggiA%40mail.gmail.com.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "RISC-V SW Dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sw-dev+un...@groups.riscv.org.
> To post to this group, send email to sw-...@groups.riscv.org.
> Visit this group at
> https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
> To view this discussion on the web visit
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+un...@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CA%2BwH294TtBWtYZswm3m7gwyg-c-7x7_nS63bj-wvmR7UOXpwBQ%40mail.gmail.com.
Best,
Alex
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CA%2BwH294TeWoPBwwrcG%2BTdXRvo7WBRSTP0im8R_T8%2Bjor_qxJUQ%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs_GO1zimQscCEzgu7t%2B86p6FrUUh9Y1i8BT7m%3D7V0O%3DxA%40mail.gmail.com.
Instructions simply to "use the upstream" are not really adequate when such a complex cmake invocation and work-arounds are needed to get something that can actually build working programs. I've spent a couple of years in teams working on projects modifying certain parts of llvm but it's a huge project and I certainly don't know every part of it. If I'm struggling to figure out how to use what's in the llvm repo then I don't know what someone who isn't a compiler engineer and just wants to build and run some code is going to do.
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/17fcb12e-0c4a-420e-95e3-bc12d97b8a2c%40groups.riscv.org.
./configure --prefix=/your/gccinstallpath
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CA%2BwH2948tfS2iLrK3ti6XOajUJn_%2B_V9_18XOseq1hKa1VsAUw%40mail.gmail.com.
No i did not attempt a debug build after that. All I wanted was a llvm toolchain that I can use to generate compressed instructions. So happy with Release build for now!
On 15 May 2018 at 17:49, Luke Kenneth Casson Leighton <lk...@lkcl.net> wrote:recorded here:
http://libre-riscv.org/llvm_on_riscv/
also reminder, for anyone trying debug builds, standard ld has always
always required all obj files to be ram-resident otherwise it puts the
entire machine into total thrash-meltdown: step even a few MB over the
boundary and a build that previously took 30-60 mins will instead take
several days (or segfault, as you found out, gnanasekar).
nobody really noticed or investigated the problem, however as the
number of programs that have increased in complexity to the point
where they this is becoming more and more prevalent (firefox: 7GB
resident RAM...) it's becoming much more urgent that this get "fixed".
one "solution" is of course to build without debug symbols... that
will however simply avoid the problem until such time as even a
release build goes beyond the size of resident RAM.
below is the advice of binutils' primary developer,
https://sourceware.org/bugzilla/show_bug.cgi?id=22831#c1
[reply] [−]Comment 1H.J. Lu 2018-02-11 13:01:35 UTC
Please try binutils 2.30 with "-Wl,--no-keep-memory".
gnanasekar did you get an opportunity to try that so that you could
have a debug build?
l.
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CANUXKs_Y%3DNTqy_d%2BHU%3D-qp6dkaYEM-fpP%3DcyqFWe%3D3p_t7nVAA%40mail.gmail.com.
On Thursday, May 17, 2018, Gnanasekar R <gnanase...@gmail.com> wrote:No i did not attempt a debug build after that. All I wanted was a llvm toolchain that I can use to generate compressed instructions. So happy with Release build for now!Ok, rats :) becoming increasingly more significant, this linker thrashing.Does anyone involved in gcc know what i vaguely am on about where i heard that gcc detects available resident RAM and uses up to but no more than that unless absolutely necessary? If available it means that compile could go faster, and avoids swap, which would have the opposite effect.Binutils ld command is totally missing this functionality, as its diffrent teams on gcc and binutils. If someone from gcc could point binutiks dev at the relevant code in gcc it would result in dramatic performance increases in linker phase for a huge, huge number of people worldwide.