!UMmuqvidWBzKGimLkt:matrix.org

RISC-V

297 Members
4 Servers

Load older messages


SenderMessageTime
27 Sep 2020
@telegram_530124881:feneas.orgxiao huihi,iwhat i should do when fence.i instr exec on a one hart sim?06:22:24
@telegram_530124881:feneas.orgxiao huihi,what i should do when fence.i instr exec on a one hart sim?06:27:18
@telegram_530124881:feneas.orgxiao huihi,what should i do when fence.i instr exec on a one hart sim?06:28:58
28 Sep 2020
@telegram_1209131322:feneas.orgtelegram_1209131322Redacted or Malformed Event04:06:30
@telegram_1209131322:feneas.orgtelegram_1209131322Redacted or Malformed Event04:06:30
@telegram_1368110222:feneas.orgaditya joined the room.17:23:29
@telegram_1368110222:feneas.orgadityahow to store large numbers in register in risc v17:23:54
@kallisti5:matrix.orgkallisti5 set a profile picture.13:49:23
@telegram_1368110222:feneas.orgadityasuppose i have to store 0xdeadbeef in register17:24:09
@telegram_1368110222:feneas.orgadityathen how?17:24:12
@telegram_1072825028:feneas.orgМарсель aditya according to my gcc (gcc -S) you need a “li a5,-559038464; addi a5,a5,-275”, in a way that the first isntruction will load the upper 31:12 part of the constant and the addi will add the lower 11:0 part of the constant 18:08:04
@telegram_1072825028:feneas.orgМарсельyou can also store as static data and use a load instruction in a single operation18:08:56
@telegram_1368110222:feneas.orgadityaI'm using Venus terminal18:09:26
@telegram_1368110222:feneas.orgadityanot on gcc18:09:29
@telegram_1072825028:feneas.orgМарсельI am not aware how to program the RISCV in asm, by this way I created a C code and used the GCC to encode the asm output and check how the GCC handled the 0xdeadbeef constant.18:19:13
@modp2:matrix.orgmodp2 joined the room.18:34:12
@telegram_1061545739:feneas.orgMavi Shivam joined the room.18:38:33
@telegram_534928653:feneas.orgSang
In reply to xiao hui
hi,iwhat i should do when fence.i instr exec on a one hart sim?
I know fence instn is used for synchronizing tasks
18:39:28
@telegram_530124881:feneas.orgxiao hui
In reply to Sang
I know fence instn is used for synchronizing tasks
thx q!
18:55:19
@telegram_534928653:feneas.orgSang
In reply to Sang
I know fence instn is used for synchronizing tasks
Like,
If fence is used between 2 tasks for example,
Task 1
fence
Task 2
Then here,it means that
After all operations of task 1 happens and gets finished only,
Task2 will begin.

This is the only concept I am beware of! And if this iz wrong, anyone can correct me😊👍
19:45:12
@telegram_536284675:feneas.orgEvgeny Muryshkin 🇦🇺
In reply to aditya
suppose i have to store
li x1, 0xdeadbeef
20:26:39
@telegram_536284675:feneas.orgEvgeny Muryshkin 🇦🇺This will translate into two instructions, something like lui x1, ... addi x1, ...20:44:27
@telegram_536284675:feneas.orgEvgeny Muryshkin 🇦🇺* This will translate into two instructions, something like lui x1, ... addi x1, ...20:44:42
@telegram_534928653:feneas.orgSang Forwarded message from Sang
Hello everyone,

I have tried to generate assembly code for compressed instructions. Below(case 1) is the one which I have got. But,I need the case 2 format. Can you suggest whats the difference between them?

Maybe ,I could proceed and get the desired format.

For checking whether I have done correct,I tried to compile the assembly code. But,my toolchain doesnt support compressed instructions. So, if anyone can point out the mistake or difference between the 2 cases, it would be helpful.


My assembly code for compressed instn (ebreak instn)is as follows:

Case-1(c.ebreak)
0000000000000000 <ebreak>:
push %rbp
mov %rsp,%rbp
mov $0x100073,%eax
pop %rbp
retq


Why there is a "%" symbol in this code? What does it mean?

But I need it in following format:
pop eax ;
pop ebx ;

mov eax,1
mov ebx,0
int 80h ; exit

Whats the difference between these 2 codes?
22:51:17
@telegram_534928653:feneas.orgSangHello everyone, I have tried to generate assembly code for compressed instructions. Below(case 1) is the one which I have got. But,I need the case 2 format. Can you suggest whats the difference between them? Maybe ,I could proceed and get the desired format. For checking whether I have done correct,I tried to compile the assembly code. But,my toolchain doesnt support compressed instructions. So, if anyone can point out the mistake or difference between the 2 cases, it would be helpful. My assembly code for compressed instn (ebreak instn)is as follows: Case-1(c.ebreak) 0000000000000000 <ebreak>: push %rbp mov %rsp,%rbp mov $0x100073,%eax pop %rbp retq Why there is a "%" symbol in this code? What does it mean? But I need it in following format: pop eax ; pop ebx ; mov eax,1 mov ebx,0 int 80h ; exit What can I do to change from case 1 to case 2?22:52:53
29 Sep 2020
@telegram_1178860936:feneas.org姜瑞婷 joined the room.03:11:25
@telegram_1178860936:feneas.org姜瑞婷Redacted or Malformed Event03:11:23
@telegram_1178860936:feneas.org姜瑞婷Redacted or Malformed Event03:11:23
@telegram_1361645038:feneas.org麒翰植 joined the room.04:04:25
@telegram_1295281334:feneas.orgtelegram_1295281334 joined the room.08:41:46

There are no newer messages yet.


Back to Room List