Commit Graph

152 Commits

Author SHA1 Message Date
Michael McLoughlin
672b77a441 reg,build: remove "v" from virtual register ctors
Fixes #30
2019-01-04 18:23:44 -08:00
Michael McLoughlin
05cfa809f2 build: include position information in errors
Updates #5
2019-01-04 15:01:29 -08:00
Michael McLoughlin
80c427d051 src: type for representing file:line positions
Updates #5
2019-01-04 10:57:50 -08:00
Michael McLoughlin
301d0c137a internal/stack: helper package for querying stack frames
Intended for #5. Also replaces a helper function in the `printer`
package.
2019-01-04 00:46:27 -08:00
Michael McLoughlin
52b6e2c03b doc: link to examples directory in README
Updates #13
2019-01-03 22:23:51 -08:00
Michael McLoughlin
fa7b5ed1dd doc: show more examples in README 2019-01-03 22:20:25 -08:00
Michael McLoughlin
91e048ff29 doc: add description to README
Updates #13
2019-01-03 22:02:02 -08:00
Michael McLoughlin
0594af978f doc: "Contributing" section in README
Updates #13
2019-01-03 20:49:03 -08:00
Michael McLoughlin
e0c1ed5776 doc: add quick start to README
Updates #13
2019-01-03 20:02:36 -08:00
Michael McLoughlin
ce1b0bb850 doc: move badges
Updates #13
2019-01-03 18:39:59 -08:00
Michael McLoughlin
a88262712f meta: adjust logo size
Updates #13
2019-01-03 00:46:06 -08:00
Michael McLoughlin
8a820aced1 meta: add logo
Update #13
2019-01-03 00:36:38 -08:00
Michael McLoughlin
36984c7031 printer: output build tags in stubs file
Updates #3
2019-01-02 22:01:38 -08:00
Michael McLoughlin
75224ed031 build: remove Build stutter from BuildConstraint*
Address golint failure.
2019-01-02 21:55:43 -08:00
Michael McLoughlin
6202c2c9aa ast,build: add build constraints to File
Updates #3
2019-01-02 21:35:17 -08:00
Michael McLoughlin
d92a147644 testing: coverage script
Updates #27
2019-01-02 20:41:59 -08:00
Michael McLoughlin
cf76c56dfc testing: script to measure coverage of a binary
Updates #27
2019-01-02 20:04:45 -08:00
Michael McLoughlin
d09e9ce5f9 buildtags: add Evaluate method
Updates #3
2019-01-02 00:10:55 -08:00
Michael McLoughlin
beeb9ed525 buildtags: package for build tag representation
Updates #3
2019-01-01 22:55:57 -08:00
Michael McLoughlin
0eb66fe6cc doc: READMEs for remaining "real world" examples
Updates #14
2019-01-01 17:01:08 -08:00
Michael McLoughlin
85a72997aa doc: README for data example
Updates #14
2019-01-01 16:33:30 -08:00
Michael McLoughlin
49c795704d doc: README for returns example
Updates #14
2019-01-01 16:15:33 -08:00
Michael McLoughlin
51931ee673 doc: README for sum example
Updates #14
2019-01-01 16:04:37 -08:00
Michael McLoughlin
8465c21c02 doc: README for complex example
Updates #14
2019-01-01 15:56:17 -08:00
Michael McLoughlin
1b0ce66552 doc: README for args example
Also started a README in the root examples directory.

Updates #14
2019-01-01 15:46:42 -08:00
Michael McLoughlin
4550badf58 doc: scripts to run embedmd on markdown files
This will help keep READMEs in sync with code.

Also adds a README for the add example.

Updates #14
2018-12-31 20:25:29 -08:00
Michael McLoughlin
816fa4c0e6 ast,build: allow setting data attributes
Previously GLOBL/DATA attributes are set to RODATA. This diff removes
that default and allows them to be set through the DataAttributes
context method.

Updates #2
2018-12-31 19:04:14 -08:00
Michael McLoughlin
f2315d539c tests: autogenerated test to confirm attribute strings
Test helps verify our attribute types match the macros in textflag.h.
Discovered https://golang.org/issue/29487 in the process.

Updates #2
2018-12-31 17:30:06 -08:00
Michael McLoughlin
6d6ff3cfc1 legal: include LICENSEs for data files
We depend upon data files from golang arch sub-repo and the Opcodes XML
database (behind PeachPy). This change includes their LICENSE files.

Updates #22
2018-12-31 16:17:44 -08:00
Michael McLoughlin
9fbb71b6db lint: enable golint
Enables golint and fixes function naming errors (operand checks
incorrectly cased).

Fixes #10
2018-12-31 11:20:59 -08:00
Michael McLoughlin
c79a926930 lint: enable some more linters 2018-12-31 11:01:50 -08:00
Michael McLoughlin
c62e40f8d2 pass: add textflags.h if required
Closes #12
2018-12-31 00:23:27 -08:00
Michael McLoughlin
4aaf6bc7ed ast,printer: add Includes field to File
Updates #12
2018-12-31 00:08:54 -08:00
Michael McLoughlin
e364d6398e ast,build: add Attributes fields to Function and Global
Updates #2
2018-12-30 23:35:54 -08:00
Michael McLoughlin
5d270d8d76 lint 2018-12-30 21:45:35 -08:00
Michael McLoughlin
9de1e3573c ast: Attribute type
Updates #2
2018-12-30 19:57:06 -08:00
Michael McLoughlin
edc4d3f00c examples/dot: initial version
Implements dot product in avo.

Closes #4
2018-12-30 18:46:36 -08:00
Michael McLoughlin
18cdf50d7c reg: support for register casting
Adds methods for referencing sub- or super-registers. For example, for
general purpose registers you can now reference As8(), As16(), ... and
for vector AsX(), AsY(), AsZ().

Closes #1
2018-12-30 18:40:45 -08:00
Michael McLoughlin
4644d996ee reg: remove unused ID() method 2018-12-28 20:42:48 -08:00
Michael McLoughlin
a1440c51a4 pass: some basic allocator test cases 2018-12-28 15:48:37 -08:00
Michael McLoughlin
238771f86f x86: remove unused error type 2018-12-28 15:47:38 -08:00
Michael McLoughlin
2ffc7d7fd5 examples: add most docstrings 2018-12-27 23:09:44 -08:00
Michael McLoughlin
9f5277bf8e support docstrings 2018-12-27 23:01:32 -08:00
Michael McLoughlin
023324a4ec examples/returns: demonstrate return types 2018-12-27 21:38:17 -08:00
Michael McLoughlin
51524702ba mv examples/{components,args} 2018-12-27 20:37:47 -08:00
Michael McLoughlin
6fc67c1fbc examples/geohash: first version
Adds helper for constants as DATA sections.
2018-12-27 15:44:52 -08:00
Michael McLoughlin
5dea46407c printer: shorten text size when argsize is zero 2018-12-27 13:48:31 -08:00
Michael McLoughlin
9243d299e6 first pass at DATA sections 2018-12-27 11:57:46 -08:00
Michael McLoughlin
d29c6340d7 ast: change file to have a list of sections 2018-12-26 18:58:12 -08:00
Michael McLoughlin
bf6031521f ci: run benchmarks if we have any 2018-12-26 17:11:54 -08:00