1. A method for decompressing data, comprising: receiving a compressed data stream comprising one or more contiguous variable length blocks, wherein each variable length block comprises: a plurality of contiguous variable length data fields; and a tag portion, comprising a plurality of contiguous tag fields corresponding respectively to the plurality of variable length data fields, wherein each tag field stores a tag value specifying a size of a respective variable length data field in the variable length block; storing a current variable length block of the one or more contiguous variable length data blocks; executing a single machine instruction of a processor, wherein said executing comprises: analyzing the tag portion of the current variable length block; creating a control pattern and storing the control pattern in a first register of the processor, wherein the control pattern is configured to unpack the variable length data fields of the current variable length block into corresponding uniform data fields; decompressing the plurality of contiguous variable length data fields of the current variable length block using the control pattern, wherein said decompressing operates to decompress the compressed data stream.