Skip to content

Commit b0c58fa

Browse files
committed
Apply mylai-mtk's comment
1 parent 6870e06 commit b0c58fa

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

riscv-elf.adoc

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -727,9 +727,9 @@ The PLT (Procedure Linkage Table) exists to allow function calls between
727727
dynamically linked shared objects. Each dynamic object has its own
728728
GOT (Global Offset Table) and PLT (Procedure Linkage Table).
729729

730-
RISC-V has defined several PLT styles, which used for different situation,
731-
the default PLT sytle should be used if the program is not met the condition for
732-
using all other PLT sytle.
730+
RISC-V defines several PLT styles, which are used in different situations.
731+
The default PLT style should be used if the program does not meet the conditions
732+
for using all other PLT sytles.
733733

734734
[[plt-style]]
735735
.PLT styles
@@ -763,11 +763,11 @@ The first entry in the PLT occupies two 16 byte entries for the default PLT styl
763763
jr t3
764764
----
765765

766-
And occupies three 16 byte entries for the simple landing pad PLT style:
766+
And occupies three 16 byte entries for the unlabeled landing pad PLT style:
767767
[,asm]
768768
----
769-
1: lpad 0
770-
auipc t2, %pcrel_hi(.got.plt)
769+
lpad 0
770+
1: auipc t2, %pcrel_hi(.got.plt)
771771
sub t1, t1, t3 # shifted .got.plt offset + hdr size + 16
772772
l[w|d] t3, %pcrel_lo(1b)(t2) # _dl_runtime_resolve
773773
addi t1, t1, -(hdr size + 16) # shifted .got.plt offset
@@ -794,11 +794,11 @@ The code sequences of the PLT entry for the default PLT style:
794794
nop
795795
----
796796

797-
The code sequences of the PLT entry for the the simple landing pad PLT style:
797+
The code sequences of the PLT entry for the unlabeled landing pad PLT style:
798798
[,asm]
799799
----
800-
1: lpad 0
801-
auipc t3, %pcrel_hi([email protected])
800+
lpad 0
801+
1: auipc t3, %pcrel_hi([email protected])
802802
l[w|d] t3, %pcrel_lo(1b)(t3)
803803
jalr t1, t3
804804
----
@@ -1492,9 +1492,10 @@ meaning of each column is given below:
14921492

14931493
Name:: The name of the program property type, omitting the prefix of `GNU_PROPERTY_RISCV_`.
14941494

1495-
Value:: The type value for the program property type.
1495+
Value:: The `pr_type` value for the program property type.
14961496

1497-
Size:: The data type size hold within this program property type.
1497+
Size:: The size (`pr_datasz`) of data type held within this program property
1498+
type.
14981499

14991500
Description:: Additional information about the program property type.
15001501

@@ -1511,7 +1512,6 @@ Description:: Additional information about the program property type.
15111512

15121513
==== GNU_PROPERTY_RISCV_FEATURE_1_AND
15131514

1514-
15151515
`GNU_PROPERTY_RISCV_FEATURE_1_AND` describes a set of features, where each bit
15161516
represents a different feature. The linker should perform a bitwise AND
15171517
operation when merging different objects.
@@ -1523,20 +1523,20 @@ operation when merging different objects.
15231523
| 1 | GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS
15241524
|===
15251525

1526-
`GNU_PROPERTY_RISCV_FEATURE_1_CFI_LP_UNLABELED` This bit indicate that all
1526+
`GNU_PROPERTY_RISCV_FEATURE_1_CFI_LP_UNLABELED`: This bit indicates that all
15271527
executable sections are built to be compatible with the landing pad mechanism
1528-
provided by the `Zicfilp` extension. An executable or shared library with this
1529-
bit set is required to generate PLTs with the landing pad (`lpad`) instruction,
1530-
and all label are set to `0`.
1528+
provided by the Zicfilp extension in the unlabeled scheme: Executables and
1529+
shared libraries with this bit set are required to generate PLTs in the
1530+
unlabeled landing pad PLT style, and all of the labels of lpad instructions are
1531+
set to 0, i.e. unlabeled.
15311532

1532-
`GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS`: This bit indicate that all executable
1533+
`GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS`: This bit indicates that all executable
15331534
sections are built to be compatible with the shadow stack mechanism provided by
15341535
the `Zicfiss` extension. Loading an executable or shared library with this bit
15351536
set requires the execution environment to provide either the `Zicfiss` extension
15361537
or the `Zimop` extension. When the executable or shared library is compiled with
1537-
compressed instructions then loading an executable with this bit set requires
1538-
the execution environment to provide the `Zicfiss` extension or to provide both
1539-
the `Zcmop` and `Zimop` extensions.
1538+
compressed instructions then loading it with this bit set requires the execution
1539+
environment to provide the `Zicfiss` extension or the `Zimop` extensions.
15401540

15411541
=== Mapping Symbol
15421542

0 commit comments

Comments
 (0)