History log of /seL4-l4v-10.1.1/HOL4/examples/l3-machine-code/m0/prog/m0_progLib.sml
Revision Date Author Comments
# d7726677 15-Feb-2016 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Update L3 examples.

Most changes relate to Poly/ML moving to fixed-width integers.


# d5ee45bd 20-Jan-2016 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Various updates to the L3 examples.

Most changes are brought about by improvements and generalisations within stateLib and utilsLib.

A Holmakefile has been added to a new decompilers sub-directory and some *decomp_demoScript files have also been added. This makes it easier to perform regression testing.


# be29efa8 11-Nov-2015 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Fix glitch with previous check-in.


# 61ada824 11-Nov-2015 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Print out configuration options when an unrecognised option is supplied.


# 0559f3bd 14-Jul-2015 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Make use of alignmentTheory in the l3-machine-code examples.


# e8330675 26-May-2015 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Improve the interface to stateLib.update_frame_state_thm.

Also add some explanatory comments within stateScript.sml.


# ac817518 11-May-2015 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Modify the type of HolKernel.syntax_fns and add some documentation.

This is in response to issue #247.

The change to the type makes things a little more natural when using partial applications - for example, HolKernel.syntax_fns1 can be used to provide syntax support for regular unary operations.


# bbe4fa68 27-Jul-2014 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Update for L3 examples.

Fixes a potential problem with the handling of word replicate.

Moves some shared code into stateLib (the register_combinations function).

Some other minor fixes.


# ee0c00ae 16-Jul-2014 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Update mk_m0_code_pool.

Required after commit e459571.


# cc9dd295 21-Feb-2014 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Add assembly code parsing/printing support for the M0 and ARMv7 models.

There are new entry points to the decompiler. These take a function that maps a quotation (containing machine or assembly code) into a list of strings (typically hex). This facilitate the input of ARM assembly code. For example, the functions:

m0_decompLib.m0_decompile_code
m0_core_decompLib.m0_core_decompile_code
arm_decompLib.arm_decompile_code
arm_core_decompLib.arm_core_decompile_code

are provided with type

: string -> string quotation -> Thm.thm * Thm.thm


# 64cf73f2 27-Nov-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Update ISA models.

The new models are generated by the latest version of L3. This mostly results in just a few formatting (pretty-printing) changes. However, bit-patterns are now expanded out in a different manner. Specifically, applications of “word_extract” (over the match word) are replaced with applications of “v2w” (over the bits generated by “boolify”). Some minor updates were needed to accommodate this change.


# bb4403ed 15-Nov-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

The ARMv7 tools now support another memory representation.

Memory can now be treated as a map of type ``:word32 -> word32``.

Also reworked the tools with respect to the handling of word endianness.


# e5073aed 04-Nov-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Updates for machine-code tools.

Added support for introducing SEP_ARRAY predicates for memory operations (applied to the ARM and M0 models).


# bc52f859 22-Oct-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Tool support for "LDR (literal)" under M0.


# 44dc16f2 18-Oct-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Support for generating TEMPORAL triples.

Currently works for ARM, M0 and MIPS models. Yet to update the x86-64 model.


# e609174b 16-Oct-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

The ARM-M0 model is now hooked up to the "core/fast" decompiler.


# 8d08dc89 11-Oct-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Various updates/improvements to the decompiler tools.


# a1e028ec 02-Oct-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Update M0 tools.

Minor updates to other ISA tools.


# 40807410 27-Sep-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Further updates to the tools linking the L3 ARM model to the decompiler.

A lot of code has been generalised (making it usable with other models) and the performance has been improved.


# e8ed8ef5 09-Sep-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Support a few more M0 instruction instances.


# ea82f495 30-Aug-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

The Hoare-triples for PC-relative loads now have immediate values appearing in the code-pool.

This affects the triples that are generated for instruction such as "ldr r1, [pc, #12]".

The tools for the other ISA models need minor updates following changes in stateLib.


# 6c85649c 16-Jul-2013 Anthony Fox <anthony.fox@cl.cam.ac.uk>

Add ARM-M0 model (and tools) to examples.