embeded.S file was generated by a program called mksnapshot, if you're 
still want to debug it, you could try to build d8 with "ninja -C /your-path 
-v", and then you will see a command line which start with mksnapshot near 
the end of the build process. then you could debug mksnapshot with this 
command line.

Hope it helps you.

On Wednesday, September 4, 2024 at 5:23:49 AM UTC+8 jgr...@chromium.org 
wrote:

> These are bytestreams of the compiled builtins. The --print-builtin-code 
> d8 flag will show you the disassembled version. Hope that helps!
>
> On Thu, Aug 29, 2024 at 3:33 PM 18楼梦想改造家 <18.flo...@gmail.com> wrote:
>
>> Hi, anyone.
>>
>> I have a little question. When I read the v8 code, I found a file named 
>> `out\book\gen\embedded.S|`. there are some code like this:
>>
>> ``` c++
>> .def Builtins_DeoptimizationEntry_Eager; .scl 2; .type 32; .endef;
>>   .octa 
>> 0x4c110ff22404110ff200000080ec8148,0xff218245c110ff2102454110ff20824
>> ```
>>
>> at here , octa is `0x4c110ff`... I want to know why it is this value. So 
>> I guess if I could debug the process which generate `|embedded.s|`, it will 
>> help me understand it.
>>
>> I found this function( embedded-file-writer.h - Chromium Code Search 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;l=76?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>>   
>> )
>> ``` c++
>> void MaybeWriteEmbeddedFile 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=73?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=MaybeWriteEmbeddedFile&gs=KYTHE%3A%2F%2Fkythe%3A%2F%2Fchromium.googlesource.com%2Fcodesearch%2Fchromium%2Fsrc%2F%2Fmain%3Flang%3Dc%252B%252B%3Fpath%3Dv8%2Fsrc%2Fsnapshot%2Fembedded%2Fembedded-file-writer.h%23tZuXKOZts5vj_MGjSfh_8QJGdiQbRpoTq-clSU0PZaQ>
>> (const i::EmbeddedData 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-data.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=55>*
>>  
>> blob 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=73?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=blob&gs=KYTHE%3A%2F%2Fkythe%3A%2F%2Fchromium.googlesource.com%2Fcodesearch%2Fchromium%2Fsrc%2F%2Fmain%3Flang%3Dc%252B%252B%3Fpath%3Dv8%2Fsrc%2Fsnapshot%2Fembedded%2Fembedded-file-writer.h%23-wwERYue4ZcHsPJMUMEuYZNzCU0Mawftg6rV2xcAERM>)
>>  
>> const { 
>> if (embedded_src_path_ 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=200?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>>  
>> == nullptr) return; 
>> FILE 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=76?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=FILE&gs=KYTHE%3A%2F%2FIvQBCnhreXRoZTovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY29kZXNlYXJjaC9jaHJvbWl1bS9zcmMvL21haW4_bGFuZz1jJTJCJTJCI0hJOUdWT2xNVGpJWjV2VXV0ZFJ6aUpISm1YSE9MZU1QamRZMDV1Z2F5MUEKeGt5dGhlOi8vY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jb2Rlc2VhcmNoL2Nocm9taXVtL3NyYy8vbWFpbj9sYW5nPWMlMkIlMkIjWWZXcnNzX2pxQVFjVjhnNGNVRWtwUlU1S0pXOHJ2eFE4aE1raTdFYmVYTQ%3D%3D>*
>>  
>> fp 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=76?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=fp&gs=KYTHE%3A%2F%2Fkythe%3A%2F%2Fchromium.googlesource.com%2Fcodesearch%2Fchromium%2Fsrc%2F%2Fmain%3Flang%3Dc%252B%252B%3Fpath%3Dv8%2Fsrc%2Fsnapshot%2Fembedded%2Fembedded-file-writer.h%23gaz0iDZ-kj4aERPHWMWbbibJ4sWlKRuQ25JWx1M_BSE>
>>  
>> = GetFileDescriptorOrDie 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=91?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> (embedded_src_path_ 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=200?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> std::unique_ptr 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=126>
>> <PlatformEmbeddedFileWriterBase 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/platform-embedded-file-writer-base.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=52>>
>>  
>> writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=writer&gs=KYTHE%3A%2F%2Fkythe%3A%2F%2Fchromium.googlesource.com%2Fcodesearch%2Fchromium%2Fsrc%2F%2Fmain%3Flang%3Dc%252B%252B%3Fpath%3Dv8%2Fsrc%2Fsnapshot%2Fembedded%2Fembedded-file-writer.h%23-giLviyUQfkQU3FYA5DqPMKt50I_4-98ff4Jz9XUi_4>
>>  
>> = 
>> NewPlatformEmbeddedFileWriter 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/platform-embedded-file-writer-base.cc;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=158>
>> (target_arch_ 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=209?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>,
>>  
>> target_os_ 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=210?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> -> 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=260>
>> SetFile 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/platform-embedded-file-writer-base.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=56>
>> (fp 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=76?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> WriteFilePrologue 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=101?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> (writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> .get 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=261>());
>>  
>>
>> WriteExternalFilenames 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=107?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> (writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> .get 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=261>());
>>  
>>
>> WriteDataSection 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=145?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> (writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> .get 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=261>(),
>>  
>> blob 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=73?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> WriteCodeSection 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.cc;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=136>
>> (writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> .get 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=261>(),
>>  
>> blob 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=73?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> WriteFileEpilogue 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.cc;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=176>
>> (writer 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=78?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>
>> .get 
>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/libc++/src/include/__memory/unique_ptr.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=261>(),
>>  
>> blob 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=73?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc>);
>>  
>>
>> base::Fclose 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/base/platform/wrappers.h;drc=82dff63dbf9db05e9274e11d9128af7b9f51ceaa;l=22>
>> (fp 
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/snapshot/embedded/embedded-file-writer.h;bpv=1;bpt=1;l=88?q=MaybeWriteEmbeddedFile&ss=chromium%2Fchromium%2Fsrc&gsn=fp&gs=KYTHE%3A%2F%2Fkythe%3A%2F%2Fchromium.googlesource.com%2Fcodesearch%2Fchromium%2Fsrc%2F%2Fmain%3Flang%3Dc%252B%252B%3Fpath%3Dv8%2Fsrc%2Fsnapshot%2Fembedded%2Fembedded-file-writer.h%23HWLhnrKcc4AfVrEz1peB9fohj7UXgoUQYj4j7yjoAvc>);
>>  
>>
>> }
>> ```
>>
>> which related to this process?
>>
>> So how to debug it, is there are a document for it? Thanks!
>>
>> -- 
>> -- 
>> v8-dev mailing list
>> v8-...@googlegroups.com
>> http://groups.google.com/group/v8-dev
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "v8-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to v8-dev+un...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/v8-dev/387e4b62-bccc-4973-a85f-df3091641d3cn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/v8-dev/387e4b62-bccc-4973-a85f-df3091641d3cn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> Jakob Gruber
>
> Software Engineer
>
> jgr...@google.com
>
> Google Germany GmbH
>
> Erika-Mann-Straße 33
>
> 80636 München
>
> Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
>
> Registergericht und -nummer: Hamburg, HRB 86891
>
> Sitz der Gesellschaft: Hamburg
>
> Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten 
> haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, 
> löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, 
> dass die E-Mail an die falsche Person gesendet wurde. 
>
>     
> This e-mail is confidential. If you received this communication by 
> mistake, please don't forward it to anyone else, please erase all copies 
> and attachments, and please let me know that it has gone to the wrong 
> person.
>

-- 
-- 
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-dev/eb4f1825-8483-43ae-86ad-8c771ad98318n%40googlegroups.com.

Reply via email to