Ignore:
Timestamp:
Apr 10, 2017, 12:38:44 PM (8 years ago)
Author:
[email protected]
Message:

Move ProbeContext and ProbeFunction out of AbstractMacroAssembler.
https://bugs.webkit.org/show_bug.cgi?id=170681

Reviewed by Michael Saboff.

This is a refactoring step towards enabling custom probe printers the way printInternal() works for dataLog.

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::ProbeContext::gpr): Deleted.
(JSC::AbstractMacroAssembler::ProbeContext::fpr): Deleted.
(JSC::AbstractMacroAssembler::ProbeContext::gprName): Deleted.
(JSC::AbstractMacroAssembler::ProbeContext::fprName): Deleted.

  • assembler/MacroAssembler.cpp:

(JSC::stdFunctionCallback):
(JSC::MacroAssembler::probe):

  • assembler/MacroAssembler.h:

(JSC::ProbeContext::gpr):
(JSC::ProbeContext::fpr):
(JSC::ProbeContext::gprName):
(JSC::ProbeContext::fprName):

  • assembler/MacroAssemblerARM.cpp:

(JSC::MacroAssemblerARM::probe):

  • assembler/MacroAssemblerARM64.cpp:

(JSC::arm64ProbeTrampoline):
(JSC::MacroAssemblerARM64::probe):

  • assembler/MacroAssemblerARMv7.cpp:

(JSC::MacroAssemblerARMv7::probe):

  • assembler/MacroAssemblerPrinter.cpp:
  • assembler/MacroAssemblerPrinter.h:
  • assembler/MacroAssemblerX86Common.cpp:

(JSC::MacroAssemblerX86Common::probe):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::abstractStructure):
(JSC::FTL::DFG::LowerDFGToB3::probe): Deleted.

  • Deleted because this became a useless place-holder after the transition to B3.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM64.cpp

    r191191 r215196  
    11/*
    2  * Copyright (C) 2013-2015 Apple Inc. All rights reserved.
     2 * Copyright (C) 2013-2017 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2727
    2828#if ENABLE(ASSEMBLER) && CPU(ARM64)
    29 #include "MacroAssemblerARM64.h"
     29#include "MacroAssembler.h"
    3030
    3131#include <wtf/InlineASM.h>
     
    4141#if COMPILER(GCC_OR_CLANG)
    4242
    43 // The following are offsets for MacroAssemblerARM64::ProbeContext fields accessed
     43// The following are offsets for ProbeContext fields accessed
    4444// by the ctiMasmProbeTrampoline stub.
    4545#define PTR_SIZE 8
     
    129129// These ASSERTs remind you that if you change the layout of ProbeContext,
    130130// you need to change ctiMasmProbeTrampoline offsets above to match.
    131 #define PROBE_OFFSETOF(x) offsetof(struct MacroAssemblerARM64::ProbeContext, x)
     131#define PROBE_OFFSETOF(x) offsetof(struct ProbeContext, x)
    132132COMPILE_ASSERT(PROBE_OFFSETOF(probeFunction) == PROBE_PROBE_FUNCTION_OFFSET, ProbeContext_probeFunction_offset_matches_ctiMasmProbeTrampoline);
    133133COMPILE_ASSERT(PROBE_OFFSETOF(arg1) == PROBE_ARG1_OFFSET, ProbeContext_arg1_offset_matches_ctiMasmProbeTrampoline);
     
    206206COMPILE_ASSERT(PROBE_OFFSETOF(cpu.q31) == PROBE_CPU_Q31_OFFSET, ProbeContext_cpu_q31_offset_matches_ctiMasmProbeTrampoline);
    207207
    208 COMPILE_ASSERT(sizeof(MacroAssemblerARM64::ProbeContext) == PROBE_SIZE, ProbeContext_size_matches_ctiMasmProbeTrampoline);
     208COMPILE_ASSERT(sizeof(ProbeContext) == PROBE_SIZE, ProbeContext_size_matches_ctiMasmProbeTrampoline);
    209209
    210210#undef PROBE_OFFSETOF
     
    455455#endif // COMPILER(GCC_OR_CLANG)
    456456
    457 static void arm64ProbeTrampoline(MacroAssemblerARM64::ProbeContext* context)
     457static void arm64ProbeTrampoline(ProbeContext* context)
    458458{
    459459    void* origSP = context->cpu.sp;
     
    472472}
    473473
    474 void MacroAssemblerARM64::probe(MacroAssemblerARM64::ProbeFunction function, void* arg1, void* arg2)
     474void MacroAssemblerARM64::probe(ProbeFunction function, void* arg1, void* arg2)
    475475{
    476476    sub64(TrustedImm32(8 * 8), sp);
Note: See TracChangeset for help on using the changeset viewer.