QML在Mips上运行崩溃问题

项目中需要使用QT4.8.3中的QtQuick,编写的QML文件一旦运行就会崩溃。主要现象:

1、使用Behavior on X{

  Animation{

}

}

发现只要对某个属性使用Behavior并且定义其变化的动画时,程序崩溃

2、使用属性Attach

xposition1:  xposition/3

只要在属性Attach时使用除法,程序也崩溃。


最后发现崩溃点在JSValue.h文件中的,被WTF_USE_JSVALUE32_64宏进行保护的代码中,ChangeLog中明确说明Mips是支持这个宏的,对于X86或者PPC则不支持,原因是Padding和Alignment。

直接将其换成WTF_USE_JSVALUE32即可解决问题。

这个宏的意义在于:https://bugs.webkit.org/show_bug.cgi?id=29268

Csaba Osztrogonác  2010-09-09 10:07:53 PDT
(In reply to comment #12)
> > I tried JSVALUE32_64 with QtWebKit/Windows/MinGW again, and it works now. :)
> > I don't know which changeset fixed it in the last 5 months. :)
> > 
> > It works now, so I propose to switch to JSVALUE32_64.
> > SunSpider will be 1.60x faster, but V8 will be 1.19x slower.
> 
> do not they care about this perf regression, or i'm missing something?

The difference between JSVALUE32 and JSVALUE32_64 is the size of JSValue,
which can be 32 bit or 64 bit. The JSVALUE32_64 is faster when you work
with a lot of 64 bit sized numbers (long int, double) such as 3D tests in
SunSpider. Unfortunately it has a little performance regression if your
application can't exploit the 64 bit sized JSValues.

But we have to know the only choice is JSVALUE32_64, because WebKit 
community don't intend to support JSVALUE32 in the future as Gavin said.

不过不清楚为什么在我的嵌入式平台不支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值