Skip to content

Conversation

@michaelwoerister
Copy link
Member

@michaelwoerister michaelwoerister commented Nov 26, 2019

This PR makes the encoding for the string table more compact, as described in measureme::stringtable's module-level documentation. It also moves the code for reading string tables into the analyzeme crate.

This PR concludes my planned changes to the file format for the time being. We'll need some more changes to the API in order to facilitate recording query keys but those should not require updating perf.rlo.

It's probably best to review the first commit in isolation.

r? @wesleywiser

@wesleywiser wesleywiser self-assigned this Nov 27, 2019
// Tags for the binary encoding of strings
// See module-level documentation for more information on the encoding.
const TERMINATOR: u8 = 0xFF;
const UTF8_CONTINUATION_MASK: u8 = 0b1100_0000;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've never used a big endian system so this is probably a dumb question, but on big endian systems, won't these bits be backwards? (Ie, wouldn't this need to be 0b0000_0011?)

@michaelwoerister
Copy link
Member Author

Thanks for the review, @wesleywiser!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants