how to add new field in HEAP_OBJECT_FIELDS?

32 views
Skip to first unread message

Yang Gao

unread,
Jul 16, 2019, 7:44:00 AM7/16/19
to v8-users
I aim to add three new fields in the  HEAP_OBJECT_FIELDS, which are newfield1(type is kTaggedSize), newfield2(type is kIntSize) and newfield3(type is kIntSize). For this, I have modified  related member variables of class Internals and some others, for example, I made the value of  kMapInstanceTypeOffset is 1 * kApiTaggedSize + kApiIntSize + 16, the "16" is sum of kTaggedSize,kIntSize and kIntSize.
#define HEAP_OBJECT_FIELDS(V) \
  V(kMapOffset, kTaggedSize)  \
  /* Header size. */          \
  V(newfield1, kTaggedSize)\
  V(newfield2, kIntSize) \
  V(newfield3, kIntSize)  \
  V(kHeaderSize, 0)

  DEFINE_FIELD_OFFSET_CONSTANTS(Object::kHeaderSize, HEAP_OBJECT_FIELDS)
#undef HEAP_OBJECT_FIELDS

My last modification is free-space-inl.h,at line 55:DCHECK_LE(kNextOffset+kPointerSize , relaxed_read_size());  I  delete the kPointerSize.made it is DCHECK_LE(kNextOffset, relaxed_read_size());


1>[34986/35430] LINK mksnapshot.exe mksnapshot.exe.pdb
1>  Input File Reading:           616 ms ( 10.5%)
1>  Code Layout:                  123 ms (  2.1%)
1>  PDB Emission (Cumulative):   4945 ms ( 84.3%)
1>    Add Objects:               4071 ms ( 69.4%)
1>      Type Merging:            3440 ms ( 58.7%)
1>      Symbol Merging:           628 ms ( 10.7%)
1>    TPI Stream Layout:           96 ms (  1.6%)
1>    Globals Stream Layout:      158 ms (  2.7%)
1>    Commit to Disk:             438 ms (  7.5%)
1>  Commit Output File:            38 ms (  0.7%)
1>-------------------------------------------------
1>Total Link Time:               5863 ms (100.0%)
1>[34987/35430] ACTION //v8:run_mksnapshot_default(//build/toolchain/win:win_clang_x64)
1>FAILED: gen/v8/embedded.S gen/v8/snapshot.cc
1>C:/Chromium/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe ../../v8/tools/run.py ./mksnapshot --turbo_instruction_scheduling --embedded_src gen/v8/embedded.S --embedded_variant Default --random-seed 314159265 --startup_src gen/v8/snapshot.cc --code-comments
1>ninja: build stopped: subcommand failed.
1>C:\chromium71\src\out\Default\obj\chrome\chrome.vcxproj(54,5): error MSB3073: 命令“call ninja.exe -C ../../../../out/Default/  obj/chrome/chrome.stamp”
Reply all
Reply to author
Forward
0 new messages