<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Hi Mark<br>
    <br>
    Does this help?<br>
    It calls a function __dynamic_cast and puts the result in sp #120
    which must be the location of dce. I can't see what __dynamic_cast
    is doing.<br>
    <br>
    Peter<br>
    <br>
    <u>the source</u><br>
    <br>
    795 void StandardSettingDialog::customEvent(QEvent *event)<br>
    796 {<br>
    797    if (event->type() == DialogCompletionEvent::kEventType)<br>
    798    {<br>
    799        auto dce =
    dynamic_cast<DialogCompletionEvent*>(event);<br>
    800        if (dce == nullptr)<br>
    801            return;<br>
    <br>
    <u>the assembler from -S option</u><br>
    <br>
            .text<br>
            .globl  _ZN21StandardSettingDialog11customEventEP6QEvent //
    -- Begin function _ZN21StandardSettingDialog11customEventEP6QEvent<br>
            .p2align        2<br>
            .type  
    _ZN21StandardSettingDialog11customEventEP6QEvent,@function<br>
    _ZN21StandardSettingDialog11customEventEP6QEvent: //
    @_ZN21StandardSettingDialog11customEventEP6QEvent<br>
    .Lfunc_begin167:<br>
            .loc    68 796 0 is_stmt 1      //
    standardsettings.cpp:796:0<br>
            .cfi_startproc<br>
            .cfi_personality 156, DW.ref.__gxx_personality_v0<br>
            .cfi_lsda 28, .Lexception51<br>
    // %bb.0:<br>
            sub     sp, sp, #192            // =192<br>
            str     x30, [sp, #176]         // 8-byte Folded Spill<br>
            .cfi_def_cfa_offset 192<br>
            .cfi_offset w30, -16<br>
            mrs     x8, TPIDR_EL0<br>
            ldr     x8, [x8, #40]<br>
            str     x8, [sp, #168]<br>
            str     x0, [sp, #136]<br>
            str     x1, [sp, #128]<br>
            ldr     x8, [sp, #136]<br>
    .Ltmp2139:<br>
            .loc    68 797 9 prologue_end   //
    standardsettings.cpp:797:9<br>
            ldr     x0, [sp, #128]<br>
            str     x8, [sp, #72]           // 8-byte Folded Spill<br>
            .loc    68 797 16 is_stmt 0     //
    standardsettings.cpp:797:16<br>
            bl      _ZNK6QEvent4typeEv<br>
            .loc    68 797 26               //
    standardsettings.cpp:797:26<br>
            adrp    x8, :got:_ZN21DialogCompletionEvent10kEventTypeE<br>
            ldr     x8, [x8,
    :got_lo12:_ZN21DialogCompletionEvent10kEventTypeE]<br>
            ldr     w9, [x8]<br>
    .Ltmp2140:<br>
            .loc    68 797 9                //
    standardsettings.cpp:797:9<br>
            subs    w9, w0, w9<br>
            b.ne    .LBB167_42<br>
            b       .LBB167_1<br>
    .LBB167_1:<br>
    .Ltmp2141:<br>
            .loc    68 799 57 is_stmt 1     //
    standardsettings.cpp:799:57<br>
            ldr     x8, [sp, #128]<br>
            mov     x0, x8<br>
            str     x0, [sp, #64]           // 8-byte Folded Spill<br>
            .loc    68 799 20 is_stmt 0     //
    standardsettings.cpp:799:20<br>
            cbz     x8, .LBB167_3<br>
            b       .LBB167_2<br>
    .LBB167_2:<br>
            adrp    x1, :got:_ZTI6QEvent<br>
            ldr     x1, [x1, :got_lo12:_ZTI6QEvent]<br>
            adrp    x2, :got:_ZTI21DialogCompletionEvent<br>
            ldr     x2, [x2, :got_lo12:_ZTI21DialogCompletionEvent]<br>
            mov     x0, xzr<br>
            ldr     x3, [sp, #64]           // 8-byte Folded Reload<br>
            str     x0, [sp, #56]           // 8-byte Folded Spill<br>
            mov     x0, x3<br>
            ldr     x3, [sp, #56]           // 8-byte Folded Reload<br>
            bl      __dynamic_cast<br>
            str     x0, [sp, #48]           // 8-byte Folded Spill<br>
            b       .LBB167_4<br>
    .LBB167_3:<br>
            .loc    68 0 20                 // standardsettings.cpp:0:20<br>
            mov     x0, xzr<br>
            str     x0, [sp, #48]           // 8-byte Folded Spill<br>
            .loc    68 799 20               //
    standardsettings.cpp:799:20<br>
            b       .LBB167_4<br>
    .LBB167_4:<br>
            .loc    68 0 20                 // standardsettings.cpp:0:20<br>
            ldr     x8, [sp, #48]           // 8-byte Folded Reload<br>
            .loc    68 799 14               //
    standardsettings.cpp:799:14<br>
            str     x8, [sp, #120]<br>
    .Ltmp2142:<br>
            .loc    68 800 13 is_stmt 1     //
    standardsettings.cpp:800:13<br>
            ldr     x8, [sp, #120]<br>
    .Ltmp2143:<br>
            .loc    68 800 13 is_stmt 0     //
    standardsettings.cpp:800:13<br>
            cbnz    x8, .LBB167_6<br>
            b       .LBB167_5<br>
    .LBB167_5:<br>
    .Ltmp2144:<br>
    <br>
  </body>
</html>