-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GCC compiles code with --march=rv64gc
but get c.zext.b that's in zcb extension
#1454
Comments
Is the Or, come to think of it, maybe those matching rules are irrelevant since I think it was always the case that if an appropriate multilib wasn't available then the fallback was to try to just link the toolchain default libs. This is/was a common source of confusion especially when it led to Enabling verbose output when compiling should clarify if this is the case and the wrong libraries are being linked. You probably want to configure your toolchain with
I don't understand what you're asking here. Please clarify. |
I presume that you're asking why Are you sure that you're correctly identifying the instruction in your disassembly?
Unfortunately this decoder doesn't help at the moment - maybe because it doesn't support all relevant extension yet: |
Thank you @TommyMurphyTM1234 , I understand. But when I build multilib following your step using
errors coming:
My configure is
Whatever I do such as So how can I build multilib? OR is there anything wrong besides multilib building? |
I assumed that you were using a bare-metal toolchain.
Unfortunately I haven't found a way to build the Linux toolchain with a custom set of multilibs ever since the approach of editing
In any case there's another fundamental problem with Linux toolchain multilibs - only one multilib per All I can suggest is that you build a separate Linux toolchain for each |
You'll probably need to ask about this upstream in the Binutils project. |
Thank you @TommyMurphyTM1234 , I build toolchains separately, and it works well. I then close this issue. |
Compressed instruction are disassemble into non compressed form by default, and this can be disabled by pass |
Sincere apologies but I inadvertently deleted a post from @Ye-Jinhong earlier - the one that I was replying to here and quoted in part. Sorry about that @Ye-Jinhong. |
Thanks for that @kito-cheng - I, for one, wasn't aware of that! 👍 |
description
I compiles the tool with configuration:
and 2. gcc 14.0
more details in #1448 .
However, when I compile the coremark with
-march=rv64gc
, unexpected instructions in zcb was generated like c.zext.b/h.By the way, does c.zext will dump as zext?
The text was updated successfully, but these errors were encountered: