Ignore:
Timestamp:
Mar 8, 2012, 1:58:32 PM (13 years ago)
Author:
[email protected]
Message:

Missing some places where we should be blinding 64bit values (and blinding something we shouldn't)
https://bugs.webkit.org/show_bug.cgi?id=80633

Reviewed by Gavin Barraclough.

Add 64-bit trap for shouldBlindForSpecificArch, so that we always blind
if there isn't a machine specific implementation (otherwise the 64bit value
got truncated and 32bit checks were used -- leaving 32bits untested).
Also add a bit of logic to ensure that we don't try to blind a few common
constants that go through the ImmPtr paths -- encoded numeric JSValues and
unencoded doubles with common "safe" values.

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::shouldBlindForSpecificArch):

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::shouldBlindDouble):
(MacroAssembler):
(JSC::MacroAssembler::shouldBlind):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::shouldBlindForSpecificArch):

File:
1 edited

Legend:

Unmodified
Added
Removed
Note: See TracChangeset for help on using the changeset viewer.