From 0009cd7e941fff2ffdf5b304bf5cf90fed310a5c Mon Sep 17 00:00:00 2001 From: Kostis Sagonas Date: Fri, 28 Mar 2014 17:27:32 +0100 Subject: Add support for the compilation of the is_map/1 guard to native code Namely, extend the HiPE tagging scheme info, properly handle the translation of the (is_)map type test to Icode and RTL and support handling of the map() type in the type system. While at it, also performed some clean up of things that needed small fixes. --- lib/hipe/rtl/hipe_icode2rtl.erl | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib/hipe/rtl/hipe_icode2rtl.erl') diff --git a/lib/hipe/rtl/hipe_icode2rtl.erl b/lib/hipe/rtl/hipe_icode2rtl.erl index 6ab40adcc8..483d0b37f7 100644 --- a/lib/hipe/rtl/hipe_icode2rtl.erl +++ b/lib/hipe/rtl/hipe_icode2rtl.erl @@ -437,6 +437,8 @@ gen_type_test([X], Type, TrueLbl, FalseLbl, Pred, ConstTab) -> {hipe_tagscheme:test_integer(X, TrueLbl, FalseLbl, Pred), ConstTab}; list -> {hipe_tagscheme:test_list(X, TrueLbl, FalseLbl, Pred), ConstTab}; + map -> + {hipe_tagscheme:test_map(X, TrueLbl, FalseLbl, Pred), ConstTab}; nil -> {hipe_tagscheme:test_nil(X, TrueLbl, FalseLbl, Pred), ConstTab}; number -> -- cgit v1.2.3