[llvm-commits] [PATCH] Rework bit/bits value resolving in tblgen

Jakob Stoklund Olesen stoklund at 2pi.dk
Wed Aug 29 16:28:18 PDT 2012


On Aug 29, 2012, at 4:25 PM, Michael Liao <michael.liao at intel.com> wrote:

> On Wed, 2012-08-29 at 16:22 -0700, Jakob Stoklund Olesen wrote:
>> On Aug 28, 2012, at 2:35 PM, Michael Liao <michael.liao at intel.com> wrote:
>> 
>>> This patch resolves bit/bits value by resolving initializer value first
>>> and get its bit value from the specified position by adding (or
>>> promoting) getBits() to all Init(s) and removing resolveBitReference().
>>> We unify bit/bits with other types and remove redundant logic.
>> 
>> Hi Michael,
>> 
>> Thanks for fixing this!
>> 
>> In the past I have noticed some pretty bad performance in TableGen because it is repeatedly evaluating an expression tree.
>> 
>> Does this patch help with that behavior? Did you measure the performance?
> 
> Not. Do u have any benchmark to measure?

Yeah, the LLVM targets ;-)

> I'd like to see whether or not the performance could be improved as well.

Running TableGen without a backend on X86.td or ARM.td should be a pretty good benchmark for lexing, parsing, and evaluation/expansion.

/jakob




More information about the llvm-commits mailing list