Commit Graph

  • 74f72a3b43 Documentation nits; Sematnics syntax cleanup Dimo 2017-07-21 16:46:20 -07:00
  • 9258283e14 Documentation nits; Sematnics syntax cleanup Dimo 2017-07-21 16:46:20 -07:00
  • a5fe64440f Add insturction semantics. Add semantics for vsplit,vconcat,iadd. Add initial tests Dimo 2017-07-20 18:21:55 -07:00
  • 40c86d58b9 Add insturction semantics. Add semantics for vsplit,vconcat,iadd. Add initial tests Dimo 2017-07-20 18:21:55 -07:00
  • a12fa86e60 Add the BVType; Add suport for bitvectors in TypeVar and TypeSet. Dimo 2017-07-20 17:20:23 -07:00
  • bd2e9e5d0b Add the BVType; Add suport for bitvectors in TypeVar and TypeSet. Dimo 2017-07-20 17:20:23 -07:00
  • 605886a277 Rename Dict[Var, TypeVar] to VarTyping; Add VarMap (Dict[Var,Var]). Add {Ast, Def, Rtl}.{vars(), substitution()} and Def.uses(), Def.definitions() - these enable checking structural equivalence between Rtls and doing variable substitutions between compatible Rtls; Add TypeEnv.permits() routine - allows checking if a given TypeEnv allows a given concrete typing without enumerating all typings (will be useful for determing which semantic transform applies to a given concrete typing). Dimo 2017-07-20 16:32:07 -07:00
  • 15a7d50765 Rename Dict[Var, TypeVar] to VarTyping; Add VarMap (Dict[Var,Var]). Add {Ast, Def, Rtl}.{vars(), substitution()} and Def.uses(), Def.definitions() - these enable checking structural equivalence between Rtls and doing variable substitutions between compatible Rtls; Add TypeEnv.permits() routine - allows checking if a given TypeEnv allows a given concrete typing without enumerating all typings (will be useful for determing which semantic transform applies to a given concrete typing). Dimo 2017-07-20 16:32:07 -07:00
  • 716cd26fbf Make legalization actions configurable. Jakob Stoklund Olesen 2017-07-24 11:21:12 -07:00
  • 127b22af5f Make legalization actions configurable. Jakob Stoklund Olesen 2017-07-24 11:21:12 -07:00
  • db28e733ec test-all.sh should print the versions for both python2 and python3 its using Dimo 2017-07-24 11:56:00 -07:00
  • a06964fc0e test-all.sh should print the versions for both python2 and python3 its using Dimo 2017-07-24 11:56:00 -07:00
  • f651ec4f78 Add a PredicateView type to abstract the predicate bit vector a bit. Jakob Stoklund Olesen 2017-07-21 13:48:18 -07:00
  • f583511fb6 Add a PredicateView type to abstract the predicate bit vector a bit. Jakob Stoklund Olesen 2017-07-21 13:48:18 -07:00
  • 4142a9ca9c Return a Result from constant_hash::probe. Jakob Stoklund Olesen 2017-07-21 21:10:32 -07:00
  • df1bf7d578 Return a Result from constant_hash::probe. Jakob Stoklund Olesen 2017-07-21 21:10:32 -07:00
  • 35cbe68a70 Intel encodings for floating point bitwise ops. Jakob Stoklund Olesen 2017-07-20 11:45:06 -07:00
  • 2b41f979cb Intel encodings for floating point bitwise ops. Jakob Stoklund Olesen 2017-07-20 11:45:06 -07:00
  • a42eaa77b4 Add bitwise ops that invert the second operand. Jakob Stoklund Olesen 2017-07-20 11:14:11 -07:00
  • 6ba604125d Add bitwise ops that invert the second operand. Jakob Stoklund Olesen 2017-07-20 11:14:11 -07:00
  • 43e190ad20 Intel encodings for fadd, fsub, fmul, fdiv. Jakob Stoklund Olesen 2017-07-20 10:08:09 -07:00
  • 014d9a14fe Intel encodings for fadd, fsub, fmul, fdiv. Jakob Stoklund Olesen 2017-07-20 10:08:09 -07:00
  • e3f6755264 Add some signed int to float conversions. Jakob Stoklund Olesen 2017-07-19 14:44:01 -07:00
  • 4df6741a90 Add some signed int to float conversions. Jakob Stoklund Olesen 2017-07-19 14:44:01 -07:00
  • 87c5f27ff7 Intel encodings for trap. Jakob Stoklund Olesen 2017-07-19 15:01:32 -07:00
  • e8acad5070 Intel encodings for trap. Jakob Stoklund Olesen 2017-07-19 15:01:32 -07:00
  • b59b348a1e Add Intel encodings for sextend and uextend. Jakob Stoklund Olesen 2017-07-19 13:40:11 -07:00
  • b804bc8fbc Add Intel encodings for sextend and uextend. Jakob Stoklund Olesen 2017-07-19 13:40:11 -07:00
  • 9f105145af Add a null encoding for ireduce.i32.i64. Jakob Stoklund Olesen 2017-07-19 13:11:11 -07:00
  • 444f955466 Add a null encoding for ireduce.i32.i64. Jakob Stoklund Olesen 2017-07-19 13:11:11 -07:00
  • f03f1e1898 Add tests for WebAssembly i64 operators. Jakob Stoklund Olesen 2017-07-19 12:56:54 -07:00
  • 13190fd512 Add tests for WebAssembly i64 operators. Jakob Stoklund Olesen 2017-07-19 12:56:54 -07:00
  • cfcbf44764 Add tests for WebAssembly i32 comparisons. Jakob Stoklund Olesen 2017-07-19 12:36:36 -07:00
  • bd55bd74cc Add tests for WebAssembly i32 comparisons. Jakob Stoklund Olesen 2017-07-19 12:36:36 -07:00
  • 1a662575a5 Add Intel encodings for the bint instructions. Jakob Stoklund Olesen 2017-07-19 12:01:28 -07:00
  • 265bd351bd Add Intel encodings for the bint instructions. Jakob Stoklund Olesen 2017-07-19 12:01:28 -07:00
  • 421a88123d Add Intel encodings for the icmp instruction. Jakob Stoklund Olesen 2017-07-19 10:47:51 -07:00
  • 82fbc78f2f Add Intel encodings for the icmp instruction. Jakob Stoklund Olesen 2017-07-19 10:47:51 -07:00
  • c9bbc1e86e Don't require that the fallthrough instruction has an encoding. Jakob Stoklund Olesen 2017-07-19 09:30:04 -07:00
  • 5a81831c69 Don't require that the fallthrough instruction has an encoding. Jakob Stoklund Olesen 2017-07-19 09:30:04 -07:00
  • efdbf0d735 Add Intel encodings for jump and branch instructions. Jakob Stoklund Olesen 2017-07-18 14:54:34 -07:00
  • 0a7087732e Add Intel encodings for jump and branch instructions. Jakob Stoklund Olesen 2017-07-18 14:54:34 -07:00
  • 53d9232d39 Track regmove instruction during binemit. Jakob Stoklund Olesen 2017-07-18 12:52:53 -07:00
  • 2927878707 Track regmove instruction during binemit. Jakob Stoklund Olesen 2017-07-18 12:52:53 -07:00
  • c4db4c124b Begin an Intel-specific instruction group. Jakob Stoklund Olesen 2017-07-18 10:09:02 -07:00
  • 306ef2095b Begin an Intel-specific instruction group. Jakob Stoklund Olesen 2017-07-18 10:09:02 -07:00
  • cf876e492a Add Intel encodings for imul. Jakob Stoklund Olesen 2017-07-18 09:22:50 -07:00
  • 02fd83cd5c Add Intel encodings for imul. Jakob Stoklund Olesen 2017-07-18 09:22:50 -07:00
  • 2f7057b96f Add a Context::emit_to_memory function. Jakob Stoklund Olesen 2017-07-17 18:13:05 -07:00
  • 28457f82c3 Add a Context::emit_to_memory function. Jakob Stoklund Olesen 2017-07-17 18:13:05 -07:00
  • 9dc92eb8b3 Add Intel BMI1 ctz and clz encodings. Jakob Stoklund Olesen 2017-07-12 16:28:33 -07:00
  • e3ff551c2b Add Intel BMI1 ctz and clz encodings. Jakob Stoklund Olesen 2017-07-12 16:28:33 -07:00
  • f91d747bda Add support for setting presets. Jakob Stoklund Olesen 2017-07-13 14:49:17 -07:00
  • 4bb0e2014c Add support for setting presets. Jakob Stoklund Olesen 2017-07-13 14:49:17 -07:00
  • 130b7fa2fa Add documentation for immediates with type bool. Dan Gohman 2017-07-13 16:23:41 -07:00
  • 89634fa645 Add documentation for immediates with type bool. Dan Gohman 2017-07-13 16:23:41 -07:00
  • 6d6035b918 CSSA verifier. Jakob Stoklund Olesen 2017-07-13 13:18:18 -07:00
  • 52dae7c2e2 CSSA verifier. Jakob Stoklund Olesen 2017-07-13 13:18:18 -07:00
  • 5a4aa11274 Add a bconst instruction. (#116) Dan Gohman 2017-07-13 10:12:25 -07:00
  • 3bcfb103b9 Add a bconst instruction. (#116) Dan Gohman 2017-07-13 10:12:25 -07:00
  • 5cbcd59cf0 Add some ISA predicates for Intel CPUID features. Jakob Stoklund Olesen 2017-07-12 16:05:20 -07:00
  • d8e2cb2b42 Add some ISA predicates for Intel CPUID features. Jakob Stoklund Olesen 2017-07-12 16:05:20 -07:00
  • 435a15b88d Add Intel encodings for popcnt. Jakob Stoklund Olesen 2017-07-12 14:14:08 -07:00
  • b6f2f0d862 Add Intel encodings for popcnt. Jakob Stoklund Olesen 2017-07-12 14:14:08 -07:00
  • f57c666d8a Add Intel encodings for shift and rotate instructions. Jakob Stoklund Olesen 2017-07-12 12:53:41 -07:00
  • 5615e4a9e7 Add Intel encodings for shift and rotate instructions. Jakob Stoklund Olesen 2017-07-12 12:53:41 -07:00
  • 1f52415b17 Add a WebAssembly filetests directory. Jakob Stoklund Olesen 2017-07-11 17:42:21 -07:00
  • 3d738d01bb Add a WebAssembly filetests directory. Jakob Stoklund Olesen 2017-07-11 17:42:21 -07:00
  • 9e3b6a6eba Add a Context::compile() function which runs all compiler passes. Jakob Stoklund Olesen 2017-07-11 16:26:16 -07:00
  • 6cc729a69b Add a Context::compile() function which runs all compiler passes. Jakob Stoklund Olesen 2017-07-11 16:26:16 -07:00
  • ae5e440094 Fix Vim syntax highlighting of numbers. Jakob Stoklund Olesen 2017-07-12 11:17:59 -07:00
  • 07a96e609e Fix Vim syntax highlighting of numbers. Jakob Stoklund Olesen 2017-07-12 11:17:59 -07:00
  • d56d4d171e Tag the regmove instruction with other_side_effects. Jakob Stoklund Olesen 2017-07-12 09:49:02 -07:00
  • 6e0834eea9 Tag the regmove instruction with other_side_effects. Jakob Stoklund Olesen 2017-07-12 09:49:02 -07:00
  • 0917cfe7f4 Attach encodings to regmove instructions generated during coloring. Jakob Stoklund Olesen 2017-07-12 10:37:50 -07:00
  • abc1743486 Attach encodings to regmove instructions generated during coloring. Jakob Stoklund Olesen 2017-07-12 10:37:50 -07:00
  • ca99bd1641 Add RISC-V regmove encodings. Jakob Stoklund Olesen 2017-07-12 10:43:13 -07:00
  • 2ee37784ff Add RISC-V regmove encodings. Jakob Stoklund Olesen 2017-07-12 10:43:13 -07:00
  • ad76f80127 Add Intel regmove encodings. Jakob Stoklund Olesen 2017-07-12 10:22:43 -07:00
  • edffd848bf Add Intel regmove encodings. Jakob Stoklund Olesen 2017-07-12 10:22:43 -07:00
  • 69f974ba5d Add an ISA argument to dfg.display_inst(). Jakob Stoklund Olesen 2017-07-12 10:12:20 -07:00
  • b6d4b884ad Add an ISA argument to dfg.display_inst(). Jakob Stoklund Olesen 2017-07-12 10:12:20 -07:00
  • e4da2e1f22 Include ISA-specific information in verifier errors. Jakob Stoklund Olesen 2017-07-12 09:59:00 -07:00
  • 71af555e6f Include ISA-specific information in verifier errors. Jakob Stoklund Olesen 2017-07-12 09:59:00 -07:00
  • 924c4649cc Enforce encodings for instructions with side effects. Jakob Stoklund Olesen 2017-07-12 09:29:48 -07:00
  • 24b53efc9d Enforce encodings for instructions with side effects. Jakob Stoklund Olesen 2017-07-12 09:29:48 -07:00
  • fc94ce7e8c Add an other_side_effects instruction flag. Jakob Stoklund Olesen 2017-07-12 09:15:40 -07:00
  • 6ee432329d Add an other_side_effects instruction flag. Jakob Stoklund Olesen 2017-07-12 09:15:40 -07:00
  • 7c438f866c Add fix for #114 (#115) d1m0 2017-07-12 08:51:55 -07:00
  • a9147ebd30 Add fix for #114 (#115) d1m0 2017-07-12 08:51:55 -07:00
  • 962c945a3c Cretonne IL frontend: ILBuilder (#97) Denis Merigoux 2017-07-11 15:08:57 -07:00
  • de5501bc47 Cretonne IL frontend: ILBuilder (#97) Denis Merigoux 2017-07-11 15:08:57 -07:00
  • a4a8c83aab Start adding Intel 64-bit encodings. Jakob Stoklund Olesen 2017-07-10 16:16:22 -07:00
  • 6ae4eb82f8 Start adding Intel 64-bit encodings. Jakob Stoklund Olesen 2017-07-10 16:16:22 -07:00
  • fb227cb389 Move Intel recipe_* bodies into intel/recipes.py. Jakob Stoklund Olesen 2017-07-10 14:06:08 -07:00
  • 263779ac56 Move Intel recipe_* bodies into intel/recipes.py. Jakob Stoklund Olesen 2017-07-10 14:06:08 -07:00
  • f837dcf4b7 Handle bound instructions in pattern type inference (#113) d1m0 2017-07-11 08:39:22 -07:00
  • c5cddc3eac Handle bound instructions in pattern type inference (#113) d1m0 2017-07-11 08:39:22 -07:00
  • fc11ae7b72 Emit runtime type checks in legalizer.rs (#112) d1m0 2017-07-10 15:28:32 -07:00
  • 98f822f347 Emit runtime type checks in legalizer.rs (#112) d1m0 2017-07-10 15:28:32 -07:00