Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 924fe98

Browse files
committed
cmd/internal/obj/riscv: add encoding for compressed riscv64 instructions
Regenerate instruction encodings for riscv64, including rv64_c, rv_c and rv_c_d. Updates #71105 Change-Id: I004cc00290bf018ebb848592d84d924481f03851 Reviewed-on: https://go-review.googlesource.com/c/go/+/523476 Reviewed-by: Meng Zhuo <mengzhuo1203@gmail.com> Reviewed-by: Cherry Mui <cherryyz@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
1 parent 320df53 commit 924fe98

File tree

3 files changed

+178
-4
lines changed

3 files changed

+178
-4
lines changed

‎src/cmd/internal/obj/riscv/anames.go‎

Lines changed: 41 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎src/cmd/internal/obj/riscv/cpu.go‎

Lines changed: 62 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -551,7 +551,7 @@ const (
551551
AFNMADDQ
552552
AFNMSUBQ
553553

554-
// 22.3 Quad-Precision Convert and Move Instructions
554+
// 22.3: Quad-Precision Convert and Move Instructions
555555
AFCVTWQ
556556
AFCVTLQ
557557
AFCVTSQ
@@ -568,14 +568,73 @@ const (
568568
AFSGNJNQ
569569
AFSGNJXQ
570570

571-
// 22.4 Quad-Precision Floating-Point Compare Instructions
571+
// 22.4: Quad-Precision Floating-Point Compare Instructions
572572
AFEQQ
573573
AFLEQ
574574
AFLTQ
575575

576-
// 22.5 Quad-Precision Floating-Point Classify Instruction
576+
// 22.5: Quad-Precision Floating-Point Classify Instruction
577577
AFCLASSQ
578578

579+
//
580+
// "C" Extension for Compressed Instructions
581+
//
582+
583+
// 26.3.1: Compressed Stack-Pointer-Based Loads and Stores
584+
ACLWSP
585+
ACFLWSP
586+
ACLDSP
587+
ACFLDSP
588+
ACSWSP
589+
ACSDSP
590+
ACFSWSP
591+
ACFSDSP
592+
593+
// 26.3.2: Compressed Register-Based Loads and Stores
594+
ACLW
595+
ACLD
596+
ACFLW
597+
ACFLD
598+
ACSW
599+
ACSD
600+
ACFSW
601+
ACFSD
602+
603+
// 26.4: Compressed Control Transfer Instructions
604+
ACJ
605+
ACJR
606+
ACJALR
607+
ACBEQZ
608+
ACBNEZ
609+
610+
// 26.5.1: Compressed Integer Constant-Generation Instructions
611+
ACLI
612+
ACLUI
613+
ACADDI
614+
ACADDIW
615+
ACADDI16SP
616+
ACADDI4SPN
617+
ACSLLI
618+
ACSRLI
619+
ACSRAI
620+
ACANDI
621+
622+
// 26.5.3: Compressed Integer Register-Register Operations
623+
ACMV
624+
ACADD
625+
ACAND
626+
ACOR
627+
ACXOR
628+
ACSUB
629+
ACADDW
630+
ACSUBW
631+
632+
// 26.5.5: Compressed NOP Instruction
633+
ACNOP
634+
635+
// 26.5.6: Compressed Breakpoint Instruction
636+
ACEBREAK
637+
579638
//
580639
// "B" Extension for Bit Manipulation, Version 1.0.0
581640
//

‎src/cmd/internal/obj/riscv/inst.go‎

Lines changed: 75 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /