> On Sep 17, 2018, at 10:36 AM, Keith Miller <[email protected]> wrote:
> 
> IIRC, it spends a bunch of time in the offline assembler ruby scripts. AFAIK, 
> those scripts only depend on the LowLevelInterpreter*.asm files.

We’re talking about the offset extractor binary, which depends on most of JSC’s 
and WTF’s headers, and the asm.rb build, which depends on:

- all of the offlineasm ruby scripts
- all of the *.asm files
- everything that the offset extractor binary depended on (so most of JSC’s and 
WTF’s headers).

> So we should only need to run it if those files have changed. Or, for the 
> assembly generation half, if there is also a new object offsets binary (from 
> LLIntOffsetsExtractor.cpp).

We’re talking about the compiling of the offset extractor binary and the 
assembly generation half.

-Filip

> 
> Cheers,
> Keith
> 
>> On Sep 17, 2018, at 10:21 AM, Filip Pizlo <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Sorry, I should have asked: does it even rebuild when you change nothing?
>> 
>> That llint step really does depend on most headers in WTF and JSC, so if you 
>> change any of them then I would expect a rebuild of that file. It may be 
>> that the right solution is to make that step faster and to make it possible 
>> to run it in parallel to other steps. 
>> 
>> -Filip
>> 
>> On Sep 17, 2018, at 10:01 AM, Darin Adler <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>>> I don’t know. 
>>> 
>>> Sent from my iPhone
>>> 
>>> On Sep 17, 2018, at 7:49 AM, Filip Pizlo <[email protected] 
>>> <mailto:[email protected]>> wrote:
>>> 
>>>> 
>>>> 
>>>> On Sep 16, 2018, at 8:48 PM, Darin Adler <[email protected] 
>>>> <mailto:[email protected]>> wrote:
>>>> 
>>>>>> On Sep 16, 2018, at 5:59 PM, Filip Pizlo <[email protected] 
>>>>>> <mailto:[email protected]>> wrote:
>>>>>> 
>>>>>> Which offline assembler build step are you referring to?
>>>>> 
>>>>> The one that is the “Offline Assembler” target in Xcode, which runs this 
>>>>> command:
>>>>> 
>>>>> ruby JavaScriptCore/offlineasm/asm.rb 
>>>>> JavaScriptCore/llint/LowLevelInterpreter.asm 
>>>>> "${BUILT_PRODUCTS_DIR}/JSCLLIntOffsetsExtractor” LLIntAssembly.h
>>>>> 
>>>>> For a “nothing rebuild” of all of WebKit and all of Safari for iOS on my 
>>>>> iMac, it takes about 10 seconds out of a 30 second total “build" time.
>>>>> 
>>>>> Looking more carefully at the build log now, it seems that recompiling 
>>>>> LLIntOffsetExtractor.cpp is also taking multiple seconds. Not executing 
>>>>> generate_offset_extractor.rb, but compiling the output.
>>>> 
>>>> Does every build that you do rebuild LLIntOffsetExtractor.cpp?  Including 
>>>> a clean build?
>>>> 
>>>> -Filip
>>>> 
>>>>> 
>>>>> — Darin
>> _______________________________________________
>> webkit-dev mailing list
>> [email protected] <mailto:[email protected]>
>> https://lists.webkit.org/mailman/listinfo/webkit-dev
> 

_______________________________________________
webkit-dev mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to