libcopp
2.3.1
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
Functions
_
a
c
d
f
g
h
i
m
o
p
r
s
t
w
y
Variables
_
a
b
c
d
e
f
g
h
l
m
o
p
r
s
t
u
w
x
Typedefs
Enumerations
Enumerator
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Typedefs
_
a
b
c
d
e
f
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerations
Enumerator
e
l
s
u
Related Symbols
_
d
e
i
l
o
r
s
w
Files
File List
Globals
All
_
b
c
e
g
j
l
m
o
p
r
s
t
u
w
Functions
b
c
g
j
m
o
p
r
s
t
Variables
b
c
g
m
s
t
Typedefs
Enumerations
Enumerator
c
e
Macros
_
c
l
m
s
t
u
w
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
src
libcopp
fcontext
asm
tail_ontop_ppc32_sysv.cpp
Go to the documentation of this file.
1
2
// Copyright Oliver Kowalke 2009.
3
// Distributed under the Boost Software License, Version 1.0.
4
// (See accompanying file LICENSE_1_0.txt or copy at
5
// http://www.boost.org/LICENSE_1_0.txt)
6
7
#include <
libcopp/fcontext/fcontext.hpp
>
8
9
using
copp::fcontext_t;
10
using
copp::transfer_t;
11
12
// This C++ tail of ontop_fcontext() allocates transfer_t{ from, vp }
13
// on the stack. If fn() throws a C++ exception, then the C++ runtime
14
// must remove this tail's stack frame.
15
extern
"C"
transfer_t
ontop_fcontext_tail
(
int
ignore,
void
* vp, transfer_t (*fn)(transfer_t), fcontext_t
const
from) {
16
return
fn(transfer_t{from, vp});
17
}
15
extern
"C"
transfer_t
ontop_fcontext_tail
(
int
ignore,
void
* vp, transfer_t (*fn)(transfer_t), fcontext_t
const
from) {
…
}
fcontext.hpp
ontop_fcontext_tail
transfer_t ontop_fcontext_tail(int ignore, void *vp, transfer_t(*fn)(transfer_t), fcontext_t const from)
Definition
tail_ontop_ppc32_sysv.cpp:15
Generated by
1.9.8