aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src/compiler.app.src
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2010-04-22 10:07:18 +0200
committerBjörn Gustavsson <[email protected]>2010-05-11 08:54:25 +0200
commit1d3148a8532b9319265fbe4107cdde81b554b3a2 (patch)
treea50fdf410315ed0224a38ef25327af7fbdc6311d /lib/compiler/src/compiler.app.src
parentd60f055697cfe8e7f94be4d291d49bb00a66bc52 (diff)
downloadotp-1d3148a8532b9319265fbe4107cdde81b554b3a2.tar.gz
otp-1d3148a8532b9319265fbe4107cdde81b554b3a2.tar.bz2
otp-1d3148a8532b9319265fbe4107cdde81b554b3a2.zip
Optimize selective receives in the presence of a large message queue
If a gen_server process has many messages in its message queue and calls another gen_server process, the selective receive in gen_server:call() will have to go through the entire message queue. Have the compiler generate the new mark_recv/1 and mark_recv/1 instructions that can avoid going through the entire message queue.
Diffstat (limited to 'lib/compiler/src/compiler.app.src')
-rw-r--r--lib/compiler/src/compiler.app.src1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/compiler/src/compiler.app.src b/lib/compiler/src/compiler.app.src
index b0311365c4..1bb62f41cf 100644
--- a/lib/compiler/src/compiler.app.src
+++ b/lib/compiler/src/compiler.app.src
@@ -33,6 +33,7 @@
beam_listing,
beam_opcodes,
beam_peep,
+ beam_receive,
beam_trim,
beam_type,
beam_utils,