[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Viuavm-commits] [SCM] Viua VM branch devel updated. v0.8.4-1123-g054896
From: |
git |
Subject: |
[Viuavm-commits] [SCM] Viua VM branch devel updated. v0.8.4-1123-g054896e |
Date: |
Sun, 23 Apr 2017 18:55:12 +0200 (CEST) |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Viua VM".
The branch, devel has been updated
via 054896e113d3e78e6d806bcd9a0d456b639b0cbf (commit)
via 818364432c11926e3dd6479191da32a7a05d0ba2 (commit)
via eb00c844ab8e81f2479f769f2572f0b3d10a1937 (commit)
via 653b7d465b87cb6cbe6ea709672d1314c907a88e (commit)
via 23c7db723d2c3baf3fa5d7bb0869d2890c762ab4 (commit)
via b48216be637d1392de0555c22f0ddd00bed89e57 (commit)
via 0fe1362b42ce919c714807fa4334468c2d0470ee (commit)
via 936e746362e995faf229048baa4739d2c9f5a148 (commit)
via c397d9a7b9073b8c352046985dccca4f9e4c64f2 (commit)
via 6809792fb525fe11327a690a693c8274ca7e6aa7 (commit)
via 5256555470dfd20ec7adb9369c2f631e4dd11554 (commit)
via 8eed4921cc2a6df26da696d9373e7a4965d911bd (commit)
via a368bb0bbcf16a9ab4dd6b5e92e8e06648fcaf3d (commit)
via bb087cf0315ead5d6c50607d0c7635b49b12d01c (commit)
via 3d2b06879ceab9d8ba68db09a1cd7fd30471e1e3 (commit)
from de0c935e96696f1a708a7e8a3b221f82c73c0cfe (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 054896e113d3e78e6d806bcd9a0d456b639b0cbf
Merge: de0c935 8183644
Author: Marek Marecki <address@hidden>
Date: Sun Apr 23 18:50:51 2017 +0200
Merge branch 'issue/8f249243/simplify-arithmetic-ops' into devel
commit 818364432c11926e3dd6479191da32a7a05d0ba2
Author: Marek Marecki <address@hidden>
Date: Sun Apr 23 18:50:35 2017 +0200
Update Changelog
commit eb00c844ab8e81f2479f769f2572f0b3d10a1937
Author: Marek Marecki <address@hidden>
Date: Sun Apr 23 18:42:47 2017 +0200
Remove return type specifiers from arithmetic and logic instructions
These "return type specifiers" told the VM what type the result should
be, and to what type the operands should be converted before either
arithmetic or logic operation took place.
This proved unwieldy - it made ALU instructions a special case in
syntax.
Also with the advent of simplified types for arithmetic type
specifiers lost their weight because there are not only two types:
integer and float.
The semantics changed to:
- an ALU instruction takes two input values: lhs and rhs
- rhs value is converted to the same type as lhs value
- operation is executed
- if it was arithmetic operation, the result type is the same as the
type of the lhs value
- if it was logic operation, the reslt type is boolean
-----------------------------------------------------------------------
Summary of changes:
Changelog.markdown | 3 +
include/viua/cg/bytecode/instructions.h | 18 ++--
include/viua/program.h | 20 ++--
include/viua/types/boolean.h | 21 +---
include/viua/types/float.h | 27 +++--
include/viua/types/integer.h | 25 ++---
include/viua/types/number.h | 24 +++--
include/viua/types/string.h | 2 +-
include/viua/version.h | 2 +-
sample/asm/abs.asm | 4 +-
sample/asm/casts/stoi.asm | 2 +-
sample/asm/commandline.asm | 2 +-
sample/asm/concurrency/detaching_a_process.asm | 2 +-
.../asm/concurrency/joining_detached_process.asm | 2 +-
sample/asm/external/math.cpp | 2 +-
sample/asm/factorial.asm | 4 +-
sample/asm/factorial_accumulator_by_move.asm | 4 +-
sample/asm/factorial_tailcall.asm | 4 +-
sample/asm/float/add.asm | 6 +-
sample/asm/float/div.asm | 2 +-
sample/asm/float/eq.asm | 2 +-
sample/asm/float/gt.asm | 2 +-
sample/asm/float/gte.asm | 2 +-
sample/asm/float/in_condition.asm | 2 +-
sample/asm/float/lt.asm | 2 +-
sample/asm/float/lte.asm | 2 +-
sample/asm/float/mul.asm | 2 +-
sample/asm/float/sub.asm | 2 +-
sample/asm/functions/closures/adder.asm | 2 +-
sample/asm/functions/closures/nested_closures.asm | 2 +-
sample/asm/functions/higher_order/apply.asm | 2 +-
.../asm/functions/higher_order/apply_by_move.asm | 2 +-
sample/asm/functions/higher_order/filter.asm | 6 +-
.../asm/functions/higher_order/filter_closure.asm | 6 +-
.../higher_order/filter_closure_vector_by_move.asm | 6 +-
.../higher_order/filter_vector_by_move.asm | 6 +-
sample/asm/functions/higher_order/invoke.asm | 4 +-
sample/asm/functions/higher_order/map.asm | 4 +-
.../functions/higher_order/map_vector_by_move.asm | 4 +-
sample/asm/functions/recursive.asm | 2 +-
sample/asm/functions/static_registers.asm | 2 +-
sample/asm/int/add.asm | 4 +-
sample/asm/int/add_with_rreferences.asm | 2 +-
sample/asm/int/boolean_as_int.asm | 4 +-
sample/asm/int/div.asm | 2 +-
sample/asm/int/eq.asm | 2 +-
sample/asm/int/gt.asm | 2 +-
sample/asm/int/gte.asm | 2 +-
sample/asm/int/in_condition.asm | 2 +-
sample/asm/int/lt.asm | 2 +-
sample/asm/int/lte.asm | 2 +-
sample/asm/int/modulo.asm | 8 +-
sample/asm/int/mul.asm | 4 +-
sample/asm/int/sub.asm | 2 +-
sample/asm/invalid_operand_types/fadd.asm | 2 +-
sample/asm/invalid_operand_types/fdiv.asm | 2 +-
sample/asm/invalid_operand_types/feq.asm | 2 +-
sample/asm/invalid_operand_types/fgt.asm | 2 +-
sample/asm/invalid_operand_types/fgte.asm | 2 +-
sample/asm/invalid_operand_types/flt.asm | 2 +-
sample/asm/invalid_operand_types/flte.asm | 2 +-
sample/asm/invalid_operand_types/fmul.asm | 2 +-
sample/asm/invalid_operand_types/fsub.asm | 2 +-
sample/asm/invalid_operand_types/iadd.asm | 2 +-
sample/asm/invalid_operand_types/idiv.asm | 2 +-
sample/asm/invalid_operand_types/ieq.asm | 2 +-
sample/asm/invalid_operand_types/igt.asm | 2 +-
sample/asm/invalid_operand_types/igte.asm | 2 +-
sample/asm/invalid_operand_types/ilt.asm | 2 +-
sample/asm/invalid_operand_types/ilte.asm | 2 +-
sample/asm/invalid_operand_types/imul.asm | 2 +-
sample/asm/invalid_operand_types/isub.asm | 2 +-
sample/asm/iterfib.asm | 4 +-
sample/asm/linking/static/jumplib.asm | 2 +-
sample/asm/looping.asm | 2 +-
sample/asm/misc/broken_watchdog.asm | 6 +-
sample/asm/pointers/fcall.asm | 4 +-
sample/asm/pointers/float_arithmetic.asm | 2 +-
sample/asm/pointers/integer_arithmetic.asm | 2 +-
sample/asm/power_of.asm | 6 +-
.../iadd_of_empty_registers.asm | 2 +-
.../use_of_empty_first_operand_in_iadd.asm | 2 +-
.../use_of_empty_second_operand_in_iadd.asm | 2 +-
sample/asm/vector/vinsert.asm | 2 +-
sample/asm/watchdog/restarting_process.asm | 4 +-
sample/benchmark/99bottles/99bottles.asm | 2 +-
sample/contrib/99bottles.asm | 2 +-
sample/contrib/beer99.asm | 6 +-
.../examples/concurrency/process_spawner/main.asm | 2 +-
sample/examples/fibonacci/using_iteration.asm | 2 +-
.../examples/fibonacci/using_recursive_calls.asm | 2 +-
sample/examples/fibonacci/using_tail_calls.asm | 2 +-
sample/examples/guessing_game/main.asm | 6 +-
sample/misc/processes.asm | 2 +-
.../standard_library/functional/apply_simple.asm | 2 +-
sample/standard_library/random/randint.asm | 4 +-
.../standard_library/vector/any_returns_false.asm | 2 +-
.../standard_library/vector/any_returns_true.asm | 2 +-
.../vector/every_returns_false.asm | 2 +-
.../standard_library/vector/every_returns_true.asm | 2 +-
src/bytecode/decoder/operands.cpp | 20 ++--
src/bytecode/encoder/operands.cpp | 2 +-
src/cg/assembler/static_analysis.cpp | 1 -
src/cg/bytecode/instructions.cpp | 77 ++++----------
src/cg/disassembler/disassembler.cpp | 30 ------
src/cg/lex.cpp | 18 ----
src/cg/tools.cpp | 5 +-
src/front/asm/assemble_instruction.cpp | 54 ++++------
src/process/instr/arithmetic.cpp | 117 +++------------------
src/process/instr/cast.cpp | 4 +-
src/process/instr/text.cpp | 6 +-
src/process/instr/vector.cpp | 4 +-
src/programinstructions.cpp | 36 +++----
src/stdlib/kitchensink.cpp | 2 +-
src/stdlib/viua/functional.asm | 8 +-
src/stdlib/viua/misc.asm | 8 +-
src/stdlib/viua/vector.asm | 8 +-
src/types/float.cpp | 49 +++++----
src/types/integer.cpp | 49 +++++----
src/types/string.cpp | 10 +-
tests/tests.py | 7 +-
121 files changed, 364 insertions(+), 545 deletions(-)
hooks/post-receive
--
Viua VM
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Viuavm-commits] [SCM] Viua VM branch devel updated. v0.8.4-1123-g054896e,
git <=