Note that WebAssembly far jump tables also read the target address from the
code object (see JumpTableAssembler::EmitFarJumpSlot
<https://source.chromium.org/chromium/chromium/src/+/main:v8/src/wasm/jump-table-assembler.cc;l=32;drc=ffd9e82dd5dd314bad48ab602517bd378b6d2184>).
There is no workaround for that, so if you want to support WebAssembly, you
would have to change how the far jump table works on x64.

On Mon, May 31, 2021 at 5:46 PM martin dobrev <martindobr...@gmail.com>
wrote:

> Looks like this do the job.
>
> Thank you for the fast response.
>
> В 8:46:43 ч. UTC+3на понеделник, 31 май 2021 г. jgr...@chromium.org
> написа:
>
>> Yes, running with a non-readable .text section should work.
>> Pass --no-partial-constant-pool to disable the mechanism you mentioned
>> above.
>>
>> On Wed, May 26, 2021 at 3:43 PM martin dobrev <martin...@gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> Recently i ported v8 for unix base platform (architecture is x64) where
>>> all executable memory is "execute only" => each instruction which try to
>>> read from  executable  memory result in access violation. The problem is
>>> that some of the code generated by `torque` needs to read from the code
>>> segments . For example Math.floor defined this constant
>>> `TNode<Float64T> two_52 = Float64Constant(4503599627370496.0E0);`
>>>
>>> later used in couple places in function implementation. And `torque`
>>> generate following assebly which result in crash, because instuction on
>>> '00000000F34A0909' try to read from the code segment.
>>> [image: asm.png]
>>>
>>> Is there a way to force `torque` to generate immediate/direct mov
>>> instead of relative one for constants or maybe i can move them in data
>>> segments somehow ?
>>>
>>> --
>>> --
>>> v8-users mailing list
>>> v8-u...@googlegroups.com
>>> http://groups.google.com/group/v8-users
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "v8-users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to v8-users+u...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/v8-users/65329c44-c9ed-45be-b600-769260d8a52bn%40googlegroups.com
>>> <https://groups.google.com/d/msgid/v8-users/65329c44-c9ed-45be-b600-769260d8a52bn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> --
> v8-users mailing list
> v8-users@googlegroups.com
> http://groups.google.com/group/v8-users
> ---
> You received this message because you are subscribed to the Google Groups
> "v8-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to v8-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/v8-users/9ec8f5b4-ac7c-4ad1-9a52-7d73819a84a7n%40googlegroups.com
> <https://groups.google.com/d/msgid/v8-users/9ec8f5b4-ac7c-4ad1-9a52-7d73819a84a7n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 

Clemens Backes

Software Engineer

cleme...@google.com

Google Germany GmbH

Erika-Mann-Straße 33

80636 München

Geschäftsführer: Paul Manicle, Halimah DeLaine Prado

Registergericht und -nummer: Hamburg, HRB 86891

Sitz der Gesellschaft: Hamburg

Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten
haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter,
löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen,
dass die E-Mail an die falsche Person gesendet wurde.


This e-mail is confidential. If you received this communication by mistake,
please don't forward it to anyone else, please erase all copies and
attachments, and please let me know that it has gone to the wrong person.

-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-users/CAGO%3DqhD2CLENVewZUSXUEnq_%2BeM70FsdU9fcGi5Hbkw3WLpRbA%40mail.gmail.com.

Reply via email to