[Bug 488354] [NEW] NS_InvokeByIndex in xptcinvoke_arm.cpp is not Thumb-2 safe for Lucid

Dave Martin Dave.Martin at arm.com
Wed Nov 25 18:13:12 UTC 2009


Public bug reported:

Binary package hint: xulrunner-1.9.1

Either this file should be built individually as ARM code using -marm,
or the code needs to be reviewed and modified to be Thumb-2 safe.

Specifically, calling a function using:
		mov lr, pc
		mov pc, ip

...will not interwork properly between ARM and Thumb state, depending on
the function called.

Instead, something like the following is needed:
#ifdef __thumb__
		adr lr, 0f + 1		/* store return address in lr, setting the Thumb bit [0] */
		bx ip
0:
#else
		mov lr, pc
		mov pc, ip
#endif


I'll try and propose a suitable patch.

I'm currently scanning to see whether there is other problematic code in
this package.

** Affects: xulrunner-1.9.1 (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: armel armv7

** Summary changed:

- NS_InvokeByIndex in xptcinvoke_arm.cpp is not Thumb-2 safe
+ NS_InvokeByIndex in xptcinvoke_arm.cpp is not Thumb-2 safe for Lucid

-- 
NS_InvokeByIndex in xptcinvoke_arm.cpp is not Thumb-2 safe for Lucid
https://bugs.launchpad.net/bugs/488354
You received this bug notification because you are a member of Mozilla
Bugs, which is subscribed to xulrunner-1.9.1 in ubuntu.




More information about the Ubuntu-mozillateam-bugs mailing list