poke-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug Compiler/26911] Segfault when using `continue` in try-catch


From: m.nabipoor at yahoo dot com
Subject: [Bug Compiler/26911] Segfault when using `continue` in try-catch
Date: Tue, 17 Nov 2020 21:01:36 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=26911

--- Comment #1 from Mohammad-Reza Nabipoor <m.nabipoor at yahoo dot com> ---
I've put the code in a function called "test" and this is the disassembly of
that function:

```
        note    "test"
$L1:
        prolog
        pushf   0
        pushf   1
        mktyv
        push    0x0UL
        mktyc
        push    null
        mktya
        push    0x2UL
        mka
        push    #<closure>
        pec
        msetw
        push    0x0UL
        push    #<closure>
        duc
        pec
        ains
        push    0x1UL
        push    #<closure>
        duc
        pec
        ains
        regvar
        pushvar 0x0, 0x0
        mm
        bzi     $L49
        drop
        mgetw
        swap
        mgetm
        swap
        mgetios
        swap
        mgeto
        swap
        mgetsel
        swap
        mgetsiz
        swap
        mgetm
        nip
        call
$L44:
        swap
        msetm
        swap
        msetw
        push    null
$L49:
        drop
        pushf   1
        push    null
        regvar
        sel
        push    0x0UL
        swap
        push    null
$L57:
        drop
        eqlu
        bnzi    $L121
        drop
        nrot
        aref
        popvar  0x0, 0x0
        quake
        push    0x1UL
        addlu
        nip2
        swap
        pushf   0
        push    Exception {code=0x0,msg="generic",exit_status=0x1}
        pushe   $L77
        pushvar 0x1, 0x0
        call
$L74:
        drop
        pope
        ba      $L115
$L77:
        pushf   1
        regvar
        pushf   0
        push    "FAIL "
        prints
        pushvar 0x1, 0x0
        mm
        bzi     $L106
        drop
        mgetw
        swap
        mgetm
        swap
        mgetios
        swap
        mgeto
        swap
        mgetsel
        swap
        mgetsiz
        swap
        mgetm
        nip
        call
$L101:
        swap
        msetm
        swap
        msetw
        push    null
$L106:
        drop
        push    "msg"
        sref
        nip2
        prints
        popf    2
        ba      $L118
        popf    1
        popf    1
$L115:
        push    "PASS\n"
        prints
        popf    1
$L118:
        sync
        push    null
        ba      $L57
$L121:
        drop
        drop3
        popf    1
        popf    1
        push    null
        return
        exitvm
```

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]