|
From: Julian S. <js...@ac...> - 2006-06-09 10:17:24
|
On Thursday 08 June 2006 21:43, Eric Li wrote: > In bb_to_IR and in LibVEX_Init, there are checks that the guest_max_insns > is between 1 and 100 inclusive. Is there a reason that the max instructions > translated cannot exceed 100? Yes, two reasons. Limiting bbs to that length has negligible performance impact when running V since almost all are shorter anyway. The benefits are (1) it bounds the amount of intermediate storage (grep for N_TEMPORARY_BYTES) to translate any given bb, and (2) (somewhat secondarily) it limits worst-case translation time costs should an O(N^2) or worse algorithm accidentally exist in the compilation pipeline, particularly in iropt.c. > How can I translate a BB that has more than > 100 instructions? Chop up any bbs longer than 100 insns into pieces. J |