前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >miniblink修复一处使用vc6crt导致的v8执行不正常问题

miniblink修复一处使用vc6crt导致的v8执行不正常问题

作者头像
龙泉寺扫地僧
发布2019-02-20 09:54:22
6120
发布2019-02-20 09:54:22
举报
文章被收录于专栏:盟主来了盟主来了盟主来了

原因是一个js里,用createelement('script')方式加载了一段字符串,字符串里有%取模操作。

最后发现,是v8::internal::compiler::OperationTyper::NumberModulus这里执行这个取模操作的,

里面用到了std::abs。

miniblink里实现的abs有点问题,没实现double类型,所以导致计算出错。

下面是堆栈:

v8::internal::compiler::RangeType::Limits::Limits v8::internal::compiler::Type::Overlap v8::internal::compiler::Type::Maybe v8::internal::compiler::OperationTyper::NumberModulus v8::internal::compiler::Typer::Visitor::JSModulusTyper v8::internal::compiler::Typer::Visitor::TypeBinaryOp v8::internal::compiler::Typer::Visitor::Reduce v8::internal::compiler::GraphReducer::Reduce v8::internal::compiler::GraphReducer::ReduceTop v8::internal::compiler::GraphReducer::ReduceNode v8::internal::compiler::GraphReducer::ReduceGraph v8::internal::compiler::Typer::Run v8::internal::compiler::TyperPhase::Run v8::internal::compiler::PipelineImpl::Run<v8::internal::compiler v8::internal::compiler::PipelineImpl::CreateGraph v8::internal::compiler::PipelineCompilationJob::PrepareJobImpl v8::internal::CompilationJob::PrepareJob v8::internal::`anonymous namespace'::GetOptimizedCodeLater v8::internal::`anonymous namespace'::GetOptimizedCode v8::internal::Compiler::CompileOptimized v8::internal::__RT_impl_Runtime_CompileOptimized_Concurrent

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年05月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档