It is plausible. Codegen should use the the `ppc/register-ppc.h` instead of 
the `x64/register-x64.h` so there might be changes needed to be done to get 
codegen look up the right architecture.

On Tuesday, September 12, 2023 at 3:45:45 PM UTC+10 jgr...@chromium.org 
wrote:

> Codegen is attempting to use a register that is not available (it is not 
> part of the allocatable register list 
> <https://source.chromium.org/chromium/chromium/src/+/main:v8/src/codegen/x64/register-x64.h;l=31;drc=5ca8523b8c9ff9a7b3e7eb349d8fc7566f660675>).
>   Perhaps 
> it's trying to satisfy an invalid register assignment request from 
> interface-descriptors? 
>
> On Tue, Sep 12, 2023 at 7:42 AM Trung Le <8...@tle.id.au> wrote:
>
>> I can tell it could be related or similar to that of reported in 
>> https://groups.google.com/g/v8-users/c/cRb9nQUFerY
>>
>> On Tuesday, September 12, 2023 at 2:13:31 PM UTC+10 Trung Le wrote:
>>
>>> Hi all developers and core team members
>>>
>>> I am writing to you in hope someone would be able to provide guidance so 
>>> I could understand and hopefully fix the following issue when compiling
>>>
>>> v8_enable_debugging_features=true
>>> is_debug=true
>>> target_cpu = "ppc64"
>>> v8_target_cpu = "ppc64"
>>> use_goma = false
>>> is_clang = true
>>> v8_static_library=false
>>> is_component_build = true
>>> use_custom_libcxx = false
>>> v8_optimized_debug = false
>>> symbol_level = 2
>>> v8_expose_symbols = true
>>>
>>> I know ppc64le target is not supported but worth a shot in a dark as 
>>> someone might have seen similar issue on x86_64 or arm64
>>>
>>> FYI the patches for support ppc64le can be found at 
>>> https://src.fedoraproject.org/rpms/chromium/pull-request/37
>>>
>>> FAILED: gen/v8/embedded.S gen/v8/snapshot.cc 
>>> /usr/bin/python3 ../../v8/tools/run.py ./mksnapshot 
>>> --turbo_instruction_scheduling --target_os=linux --target_arch=ppc64 
>>> --embedded_src gen/v8/embedded.S --embedded_variant Default --random-seed 
>>> 314159265 --startup_src gen/v8/snapshot.cc --native-code-counters 
>>> --verify-heap
>>>
>>> # Fatal error in ../../v8/src/compiler/backend/register-allocator.cc, 
>>> line 1596
>>> # Debug check failed: data()->config()->IsAllocatableGeneralCode( 
>>> operand->fixed_register_index()).
>>> #
>>> #FailureMessage Object: 0x7fffeae028d8
>>> ==== C stack trace ===============================
>>>
>>>     ./mksnapshot(v8::base::debug::StackTrace::StackTrace()+0x2c) 
>>> [0x104c5fa9c]
>>>     ./mksnapshot(+0x4acdb20) [0x104c5db20]
>>>     ./mksnapshot(V8_Fatal(char const*, int, char const*, ...)+0x124) 
>>> [0x104c3a054]
>>>     ./mksnapshot(+0x4aa989c) [0x104c3989c]
>>>     ./mksnapshot(V8_Dcheck(char const*, int, char const*)+0x30) 
>>> [0x104c3a0b0]
>>>     
>>> ./mksnapshot(v8::internal::compiler::ConstraintBuilder::AllocateFixed(v8::internal::compiler::UnallocatedOperand*,
>>>  
>>> int, bool, bool)+0x204) [0x10342fcc4]
>>>     
>>> ./mksnapshot(v8::internal::compiler::ConstraintBuilder::MeetConstraintsBefore(int)+0x610)
>>>  
>>> [0x1034308d0]
>>>     
>>> ./mksnapshot(v8::internal::compiler::ConstraintBuilder::MeetRegisterConstraints(v8::internal::compiler::InstructionBlock
>>>  
>>> const*)+0xe0) [0x103430230]
>>>     
>>> ./mksnapshot(v8::internal::compiler::ConstraintBuilder::MeetRegisterConstraints()+0x70)
>>>  
>>> [0x103430110]
>>>     
>>> ./mksnapshot(v8::internal::compiler::MeetRegisterConstraintsPhase::Run(v8::internal::compiler::PipelineData*,
>>>  
>>> v8::internal::Zone*)+0x60) [0x103831b20]
>>>     ./mksnapshot(auto 
>>> v8::internal::compiler::PipelineImpl::Run<v8::internal::compiler::MeetRegisterConstraintsPhase>()+0xd4)
>>>  
>>> [0x103822f04]
>>>     
>>> ./mksnapshot(v8::internal::compiler::PipelineImpl::AllocateRegistersForTopTier(v8::internal::RegisterConfiguration
>>>  
>>> const*, v8::internal::compiler::CallDescriptor*, bool)+0x184) [0x103821214]
>>>     
>>> ./mksnapshot(v8::internal::compiler::PipelineImpl::SelectInstructions(v8::internal::compiler::Linkage*)+0xc78)
>>>  
>>> [0x103818258]
>>>     
>>> ./mksnapshot(v8::internal::compiler::Pipeline::GenerateCodeForCodeStub(v8::internal::Isolate*,
>>>  
>>> v8::internal::compiler::CallDescriptor*, v8::internal::compiler::Graph*, 
>>> v8::internal::compiler::JSGraph*, 
>>> v8::internal::compiler::SourcePositionTable*, v8::internal::CodeKind, char 
>>> const*, v8::internal::Builtin, v8::internal::AssemblerOptions const&, 
>>> v8::internal::ProfileDataFromFile const*)+0x1924) [0x103819ee4]
>>>     
>>> ./mksnapshot(v8::internal::compiler::CodeAssembler::GenerateCode(v8::internal::compiler::CodeAssemblerState*,
>>>  
>>> v8::internal::AssemblerOptions const&, v8::internal::ProfileDataFromFile 
>>> const*)+0x88) [0x1034f9a88]
>>>     
>>> ./mksnapshot(v8::internal::SetupIsolateDelegate::SetupBuiltinsInternal(v8::internal::Isolate*)+0x35d8c)
>>>  
>>> [0x103b364bc]
>>>     
>>> ./mksnapshot(v8::internal::SetupIsolateDelegate::SetupBuiltins(v8::internal::Isolate*,
>>>  
>>> bool)+0x34) [0x1027e9d24]
>>>     
>>> ./mksnapshot(v8::internal::Isolate::Init(v8::internal::SnapshotData*, 
>>> v8::internal::SnapshotData*, v8::internal::SnapshotData*, bool)+0x1f30) 
>>> [0x1018cd230]
>>>     ./mksnapshot(v8::internal::Isolate::InitWithoutSnapshot()+0x30) 
>>> [0x1018cb2d0]
>>>     ./mksnapshot(v8::SnapshotCreator::SnapshotCreator(v8::Isolate*, long 
>>> const*, v8::StartupData const*, bool)+0x140) [0x10146ed20]
>>>     
>>> ./mksnapshot(v8::internal::CreateSnapshotDataBlobInternal(v8::SnapshotCreator::FunctionCodeHandling,
>>>  
>>> char const*, v8::Isolate*)+0x88) [0x102424938]
>>>     ./mksnapshot(main+0xd08) [0x10145aba8]
>>>     /lib64/libc.so.6(+0x30f2c) [0x7fff94630f2c]
>>>     /lib64/libc.so.6(__libc_start_main+0x1ac) [0x7fff9463116c]
>>> Return code is -5
>>> ninja: build stopped: subcommand failed.
>>> error: Bad exit status from /var/tmp/rpm-tmp.kTN83s (%build)
>>>
>>> Many 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/d231188a-bc91-4df9-bfa0-ac30b897884en%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/v8-dev/d231188a-bc91-4df9-bfa0-ac30b897884en%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
-- 
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/85be5bed-7914-4773-a1a9-29e7a11970b9n%40googlegroups.com.

Reply via email to