Skip to content

Commit b554a9d

Browse files
authored
Implement wasm-c-api frame/trap APIs for interpreter mode (#660)
And enable to cache compiled AOT file buffer for wasm-c-api JIT mode Avoid checks that rely on undefined C behavior Fix issues of wasm-c-api sample trap and callback_chain Signed-off-by: Wenyong Huang <[email protected]>
1 parent d91047c commit b554a9d

File tree

16 files changed

+575
-103
lines changed

16 files changed

+575
-103
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ The WAMR [samples](./samples) integrate the iwasm VM core, application manager a
132132

133133
Project Technical Steering Committee
134134
====================================
135-
The [WAMR PTSC Charter](./TSC_Charter.md) governs the operations of the project TSC.
135+
The [WAMR PTSC Charter](./TSC_Charter.md) governs the operations of the project TSC.
136136
The current TSC members:
137137
- [lum1n0us](https://github.com/lum1n0us) - **Liang He**, <[email protected]>
138138
- [qinxk-inter](https://github.com/qinxk-inter) - **Xiaokang Qin**, <[email protected]>

TSC_Charter.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,31 @@
22

33
## Section 1. Guiding Principle
44

5-
The WebAssembly Micro Runtime (WAMR) project is part of the
6-
Bytecode Alliance (BA) which operates transparently, openly,
7-
collaboratively, and ethically. Project proposals, timelines, and status
5+
The WebAssembly Micro Runtime (WAMR) project is part of the
6+
Bytecode Alliance (BA) which operates transparently, openly,
7+
collaboratively, and ethically. Project proposals, timelines, and status
88
must not merely be open, but also easily visible to outsiders.
99

1010
## Section 2. Project Governance under Bytecode Alliance
1111

12-
Technical leadership for the WAMR projects within the Bytecode Alliance
13-
is delegated to the projects through the project charter. Though the BA TSC
12+
Technical leadership for the WAMR projects within the Bytecode Alliance
13+
is delegated to the projects through the project charter. Though the BA TSC
1414
will not interfere with day-to-day discussions, votes or meetings of the PTSC,
15-
the BA TSC may request additional amendments to the PTSC charter when
15+
the BA TSC may request additional amendments to the PTSC charter when
1616
there is misalignment between the project charter and the BA mission and values.
1717

1818

1919

20-
The PTSC structure described in this document may be overhauled as part of
21-
establishing a BA TSC in order to adhere to constraints or requirements that
20+
The PTSC structure described in this document may be overhauled as part of
21+
establishing a BA TSC in order to adhere to constraints or requirements that
2222
TSC will impose on project-level governance.
2323

2424
## Section 3. Establishment of the PTSC
2525

2626
PTSC memberships are not time-limited. There is no maximum size of the PTSC.
2727
The size is expected to vary in order to ensure adequate coverage of important
2828
areas of expertise, balanced with the ability to make decisions efficiently.
29-
The PTSC must have at least four members.
29+
The PTSC must have at least four members.
3030

3131
There is no specific set of requirements or qualifications for PTSC
3232
membership beyond these rules. The PTSC may add additional members to the
@@ -77,11 +77,11 @@ The PTSC will define WAMR project’s release vehicles.
7777

7878
## Section 5. WAMR Project Operations
7979

80-
The PTSC will establish and maintain a development process for the WAMR
80+
The PTSC will establish and maintain a development process for the WAMR
8181
project. The development process will establish guidelines
8282
for how the developers and community will operate. It will, for example,
8383
establish appropriate timelines for PTSC review (e.g. agenda items must be
84-
published at least a certain number of hours in advance of a PTSC
84+
published at least a certain number of hours in advance of a PTSC
8585
meeting).
8686

8787
The PTSC and entire technical community will follow any processes as may
@@ -106,7 +106,7 @@ the candidate's election. Elections shall be done within the projects by
106106
the Collaborators active in the project.
107107

108108
The PTSC will elect from amongst voting PTSC members a PTSC Chairperson to
109-
work on building an agenda for PTSC meetings. The PTSC shall hold annual
109+
work on building an agenda for PTSC meetings. The PTSC shall hold annual
110110

111111
elections to select a PTSC Chairperson; there are no limits on the number
112112
of terms a PTSC Chairperson may serve.

core/iwasm/aot/aot_runtime.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1896,7 +1896,7 @@ aot_validate_app_addr(AOTModuleInstance *module_inst,
18961896
}
18971897

18981898
/* integer overflow check */
1899-
if(app_offset + size < app_offset) {
1899+
if(app_offset > UINT32_MAX - size) {
19001900
goto fail;
19011901
}
19021902

@@ -1920,7 +1920,7 @@ aot_validate_native_addr(AOTModuleInstance *module_inst,
19201920
}
19211921

19221922
/* integer overflow check */
1923-
if (addr + size < addr) {
1923+
if ((uintptr_t)addr > UINTPTR_MAX - size) {
19241924
goto fail;
19251925
}
19261926

0 commit comments

Comments
 (0)