From 51d32b92df4eeba729c4cb950d6374b8f879ca5c Mon Sep 17 00:00:00 2001 From: Bernhard Schommer Date: Tue, 18 Sep 2018 10:43:53 +0200 Subject: Add builtin isel (conditional move) for int64, uint64 and _Bool (#140) New builtin isel variants to support conditional moves for 64bit integers and _Bool values. Bug 24516 --- powerpc/CBuiltins.ml | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'powerpc/CBuiltins.ml') diff --git a/powerpc/CBuiltins.ml b/powerpc/CBuiltins.ml index c76b69ba..11b7aef9 100644 --- a/powerpc/CBuiltins.ml +++ b/powerpc/CBuiltins.ml @@ -142,6 +142,15 @@ let builtins = { (* uisel *) "__builtin_uisel", (TInt (IUInt, []),[TInt(IBool, []);TInt(IUInt, []);TInt(IUInt, [])],false); + (* isel64 *) + "__builtin_isel64", + (TInt (ILongLong, []),[TInt(IBool, []);TInt(ILongLong, []);TInt(ILongLong, [])],false); + (* uisel *) + "__builtin_uisel64", + (TInt (IULongLong, []),[TInt(IBool, []);TInt(IULongLong, []);TInt(IULongLong, [])],false); + (* bsel *) + "__builtin_bsel", + (TInt (IBool, []),[TInt(IBool, []);TInt(IBool, []);TInt(IBool, [])],false); (* no operation *) "__builtin_nop", (TVoid [], [], false); -- cgit