* Added initial Rust codegen-meta implementation.
* Replace 'Cretonne' in comments.
* Prevent iterator overflow.
* 1.25.0 compatibility changes.
* Implemented debug traits for type variants.
* Added consistent comments.
* Cleaned up a loop via clippy fix.
* Added new license to codegen-meta Cargo.toml
* Edited lane type iterator `next` method.
* Removed functions that are not needed in Rust, and edited desc.
* Debug trait derived for valuetype.
* Added comments for iterator types in the base types submodule.
* Numbering is now handled in the cdsl/types.rs file.
* Moved type number logic into cdsl/types.
* Repeating the lane change cleanup.
* Removed codegen-meta crate from codegen deps.
* Typo fix.
* Addressing a patch note.
* Addressing patch note.
* Lowercase in vector names.
* Fixing a comment bug.
* Added a copy of the license file.
* Formatting changes.
* Cleaned up the vector type numbering.
* 1.25 compatibility.
* Fixed pattern match arms.
This switches from a custom list of architectures to use the
target-lexicon crate.
- "set is_64bit=1; isa x86" is replaced with "target x86_64", and
similar for other architectures, and the `is_64bit` flag is removed
entirely.
- The `is_compressed` flag is removed too; it's no longer being used to
control REX prefixes on x86-64, ARM and Thumb are separate
architectures in target-lexicon, and we can figure out how to
select RISC-V compressed encodings when we're ready.
This makes it a little more consistent; now, "cretonne" is never capitalized
in identifier, path, or URL contexts. It is capitalized in natural
language contexts when referring to the project.