aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/test/basic_SUITE_data/basic_inline_module.erl
diff options
context:
space:
mode:
authorKostis Sagonas <[email protected]>2015-12-02 01:11:24 +0100
committerKostis Sagonas <[email protected]>2015-12-16 22:08:35 +0100
commitfd154a229271e488eccd25cf1b838560c2decb52 (patch)
treea0b60dc7506342a9da64dc828202cdb17fc5413f /lib/hipe/test/basic_SUITE_data/basic_inline_module.erl
parent34e992d6681563145c777d5c16e1305f27a751fd (diff)
downloadotp-fd154a229271e488eccd25cf1b838560c2decb52.tar.gz
otp-fd154a229271e488eccd25cf1b838560c2decb52.tar.bz2
otp-fd154a229271e488eccd25cf1b838560c2decb52.zip
Two tests that depend on inlining being turned on
Diffstat (limited to 'lib/hipe/test/basic_SUITE_data/basic_inline_module.erl')
-rw-r--r--lib/hipe/test/basic_SUITE_data/basic_inline_module.erl31
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/hipe/test/basic_SUITE_data/basic_inline_module.erl b/lib/hipe/test/basic_SUITE_data/basic_inline_module.erl
new file mode 100644
index 0000000000..306c6a39ce
--- /dev/null
+++ b/lib/hipe/test/basic_SUITE_data/basic_inline_module.erl
@@ -0,0 +1,31 @@
+%%% -*- erlang-indent-level: 2 -*-
+%%%-------------------------------------------------------------------
+%%% Author: Kostis Sagonas
+%%%
+%%% Contains tests that depend on the compiler inliner being turned on.
+%%%-------------------------------------------------------------------
+-module(basic_inline_module).
+
+-export([test/0]).
+
+-compile([inline]). %% necessary for these tests
+
+test() ->
+ ok = test_case_end_atom(),
+ ok.
+
+%%--------------------------------------------------------------------
+%% Tests whether the translation of a case_end instruction works even
+%% when an exception (no matching case pattern) is to be raised.
+
+test_case_end_atom() ->
+ {'EXIT',{{case_clause,some_atom},_Trace}} = (catch test_case_stm_inlining()),
+ ok.
+
+test_case_stm_inlining() ->
+ case some_atom() of
+ another_atom -> strange_result
+ end.
+
+some_atom() ->
+ some_atom.