⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 195418 in webkit


Ignore:
Timestamp:
Jan 21, 2016, 12:15:04 PM (11 years ago)
Author:
fpizlo@apple.com
Message:

Move32 should have an Imm, Tmp form
https://bugs.webkit.org/show_bug.cgi?id=153313

Reviewed by Mark Lam.

This enables some useful optimizations, like constant propagation in fixObviousSpills().

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::zeroExtend32ToPtr):
(JSC::MacroAssemblerX86Common::move):

  • b3/air/AirOpcode.opcodes:
Location:
trunk/Source/JavaScriptCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r195417 r195418  
     12016-01-21  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Move32 should have an Imm, Tmp form
     4        https://bugs.webkit.org/show_bug.cgi?id=153313
     5
     6        Reviewed by Mark Lam.
     7
     8        This enables some useful optimizations, like constant propagation in fixObviousSpills().
     9
     10        * assembler/MacroAssemblerX86Common.h:
     11        (JSC::MacroAssemblerX86Common::zeroExtend32ToPtr):
     12        (JSC::MacroAssemblerX86Common::move):
     13        * b3/air/AirOpcode.opcodes:
     14
    1152016-01-21  Filip Pizlo  <fpizlo@apple.com>
    216
  • trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h

    r195319 r195418  
    13511351    {
    13521352        m_assembler.movl_rr(src, dest);
     1353    }
     1354
     1355    void zeroExtend32ToPtr(TrustedImm32 src, RegisterID dest)
     1356    {
     1357        m_assembler.movl_i32r(src.m_value, dest);
    13531358    }
    13541359#else
  • trunk/Source/JavaScriptCore/b3/air/AirOpcode.opcodes

    r195388 r195418  
    432432    Tmp, Addr as store32
    433433    Tmp, Index as store32
     434    x86: Imm, Tmp as zeroExtend32ToPtr
    434435    x86: Imm, Addr as store32
    435436    x86: Imm, Index as store32
  • trunk/Source/JavaScriptCore/dfg/DFGCommon.h

    r195297 r195418  
    3939// yet know how it will turn out. For now, this flag will control whether FTL uses B3. Remember to set this
    4040// to 0 before committing!
    41 #define FTL_USES_B3 0
     41#define FTL_USES_B3 1
    4242
    4343struct Node;
Note: See TracChangeset for help on using the changeset viewer.