199451b44SJordan Rupprecht"""
299451b44SJordan RupprechtTests calling builtin functions using expression evaluation.
399451b44SJordan Rupprecht"""
499451b44SJordan Rupprecht
599451b44SJordan Rupprecht
699451b44SJordan Rupprecht
799451b44SJordan Rupprechtimport lldb
899451b44SJordan Rupprechtfrom lldbsuite.test.decorators import *
999451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import *
1099451b44SJordan Rupprechtfrom lldbsuite.test import lldbutil
1199451b44SJordan Rupprecht
1299451b44SJordan Rupprecht
1399451b44SJordan Rupprechtclass ExprCommandCallBuiltinFunction(TestBase):
1499451b44SJordan Rupprecht
1599451b44SJordan Rupprecht    # Builtins are expanded by Clang, so debug info shouldn't matter.
1699451b44SJordan Rupprecht    NO_DEBUG_INFO_TESTCASE = True
1799451b44SJordan Rupprecht
1899451b44SJordan Rupprecht    def test(self):
1999451b44SJordan Rupprecht        self.build()
2099451b44SJordan Rupprecht
21*54c26872SRaphael Isemann        target = self.createTestTarget()
2299451b44SJordan Rupprecht
2399451b44SJordan Rupprecht        self.expect_expr("__builtin_isinf(0.0f)", result_type="int", result_value="0")
2499451b44SJordan Rupprecht        self.expect_expr("__builtin_isnormal(0.0f)", result_type="int", result_value="0")
2599451b44SJordan Rupprecht        self.expect_expr("__builtin_constant_p(1)", result_type="int", result_value="1")
2699451b44SJordan Rupprecht        self.expect_expr("__builtin_abs(-14)", result_type="int", result_value="14")
27