summaryrefslogtreecommitdiffstats
path: root/test/411-optimizing-arith
Commit message (Collapse)AuthorAgeFilesLines
* Implement and/or/xor in optimizing.Nicolas Geoffray2014-11-121-1/+1
| | | | Change-Id: I7cf6da1fd334a7177a5580931b8f174dd40b7cec
* Revert "Revert "Implement long negate instruction in the optimizing compiler.""Roland Levillain2014-10-241-34/+0
| | | | | | This reverts commit 30ca3d847fe72cfa33e1b2473100ea2d8bea4517. Change-Id: I188ca8d460d55d3a9966bcf31e0588575afa77d2
* Revert "Implement long negate instruction in the optimizing compiler."Roland Levillain2014-10-231-0/+34
| | | | This reverts commit 66ce173a40eff4392e9949ede169ccf3108be2db.
* Implement long negate instruction in the optimizing compiler.Roland Levillain2014-10-231-34/+0
| | | | | | | | | | | - Add support for the neg-long (long integer two's complement negate) instruction in the optimizing compiler. - Add a 64-bit NEG instruction (negq) to the x86-64 assembler. - Generate ARM, x86 and x86-64 code for integer HNeg nodes. - Put neg-related tests into test/415-optimizing-arith-neg. Change-Id: I1fbe9611e134408a6b8745d1df20ab6ffa5e50f2
* Add multiplication for floats/doubles in optimizing compilerCalin Juravle2014-10-221-2/+121
| | | | Change-Id: I61de8ce1d9e37e30db62e776979b3f22dc643894
* Various fixes related to integer negate operations.Roland Levillain2014-10-221-2/+2
| | | | | | | | | | | - Emit an RSB instruction for HNeg nodes in the ARM code generator instead of RSBS, as we do not need to update the condition code flags in this case. - Simply punt when trying to statically evaluate a long unary operation, instead of aborting. - Move a test case to the right place. Change-Id: I35eb8dea58ed35258d4d8df77181159c3ab07b6f
* Implement int negate instruction in the optimizing compiler.Roland Levillain2014-10-211-0/+32
| | | | | | | | | | - Add support for the neg-int (integer two's complement negate) instruction in the optimizing compiler. - Add a HNeg node type for control-flow graphs and an intermediate HUnaryOperation base class. - Generate ARM, x86 and x86-64 code for integer HNeg nodes. Change-Id: I72fd3e1e5311a75c38a8cb665a9211a20325a42e
* Add multiplication for integral typesCalin Juravle2014-10-173-0/+65
This also fixes an issue where we could allocate a pair register even if one of its parts was already blocked. Change-Id: I4869175933409add2a56f1ccfb369c3d3dd3cb01