What do you mean it needs to be same? I don't set it explicitly to any 
value in my gn args file and it's "true" by default

v8_enable_31bit_smis_on_64bit_arch
    Current value (from the default) = true
    From //BUILD.gn:110

On Monday, June 8, 2020 at 8:43:31 AM UTC+2, Ben Noordhuis wrote:
>
> On Sat, Jun 6, 2020 at 12:05 AM Elmi Ahmadov <elmi...@gmail.com 
> <javascript:>> wrote: 
> > 
> > Previously, I was using the V8 version 7.4.x and I have check method to 
> test if the result object from the script execution is undefined/null or 
> real object. Which works fine with the older version of the V8. 
> > 
> > But now, I'm using V8 version 8.1.307 and my check does not work 
> anymore. 
> > 
> > This is the code snippet to reproduce the issue: 
> > // create Isolate*, v8::Local<v8::Context>> and ... 
> > v8::Handle<v8::Value> undefinedResult = v8::Undefined(isolate); 
> > v8::Handle<v8::Value> nullResult = v8::Null(isolate); 
> > 
> > std::cout << "isUndefined: " << undefinedResult->IsUndefined() << 
> std::endl; 
> > std::cout << "isNull: " << nullResult->IsNull() << std::endl; 
> > 
> > with the V8 version 7.4.x, the snippet produces the following output: 
> > isUndefined: 1 
> > isNull: 1 
> > 
> > But things turn out different for the V8 version 8.1.307, the same 
> snippet produces a different output: 
> > isUndefined: 0 
> > isNull: 0 
> > 
> > This is my gn args to generate the monolithic V8 7.4.x library: 
> > target_os = "linux" 
> > target_cpu = "x64" 
> > is_component_build = false 
> > is_debug = false 
> > use_custom_libcxx = false 
> > v8_monolithic = true 
> > v8_use_external_startup_data = false 
> > symbol_level = 0 
> > v8_enable_i18n_support= false 
> > 
> > I used the same gn args to generate the V8 version 8.1.307, but then V8 
> immediatelly crashes when `->IsUndefined()`called. I found that V8 8.1 
> contains a pointer compression feature so I disabled to see how this would 
> effect the result, now there is no crash but wrong result. 
> > target_os = "linux" 
> > target_cpu = "x64" 
> > is_component_build = false 
> > is_debug = false 
> > use_custom_libcxx = false 
> > v8_monolithic = true 
> > v8_use_external_startup_data = false 
> > symbol_level = 0 
> > v8_enable_i18n_support= false 
> > v8_enable_pointer_compression = false 
> > 
> > What is the actual cause of this issue? How can I fix it? Maybe I'm 
> missing something but I don't know what it is. 
>
> v8_enable_31bit_smis_on_64bit_arch (corresponds to 
> -DV8_31BIT_SMIS_ON_64BIT_ARCH) also needs to be the same when building 
> V8 and your project. 
>

-- 
-- 
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/07ade3b2-7396-49c9-8fc9-702d3f7a7ac1o%40googlegroups.com.

Reply via email to