Chromium Code Reviews
DescriptionSubzero. Wasm. Implement sbrk and correctly do bounds checks.
Cleans up and generally improves memory handling in
WASM. WasmTranslator now outputs the number of pages requested so the
runtime can do correct bounds checks. The runtime also initializes the
stack pointer correctly (stored at address 1024), so we no longer have
to deal with negative pointers. This allows bounds checks to be done
with a single comparison against the size of the heap. Because of
this, we now support non-power-of-two heap sizes.
Sbrk is implemented by having the runtime keep track of the current
heap break and incrementing it as necessary. The heap break is
initialized to the start of the first page beyond any initialized data
in the WASM heap.
These changes allow us to pass the complete set of torture tests that
are passing on the Wasm waterfall.
BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4369
R=kschimpf@google.com, stichnot@chromium.org
Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=4aae81af8a41f824ab80c58fd84113817431fcc6
Patch Set 1 #Patch Set 2 : Cleanup #
Total comments: 28
Patch Set 3 : Code review feedback #
Total comments: 4
Messages
Total messages: 10 (2 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||