@@ -2338,20 +2338,25 @@ void InstructionSelectorT<Adapter>::VisitTruncateFloat32ToUint32(node_t node) {
23382338}
23392339
23402340template <typename Adapter>
2341- void InstructionSelectorT<Adapter>::VisitTryTruncateFloat32ToInt64(Node* node) {
2342- Arm64OperandGeneratorT<Adapter> g (this );
2341+ void InstructionSelectorT<Adapter>::VisitTryTruncateFloat32ToInt64(
2342+ node_t node) {
2343+ if constexpr (Adapter::IsTurboshaft) {
2344+ UNIMPLEMENTED ();
2345+ } else {
2346+ Arm64OperandGeneratorT<Adapter> g (this );
23432347
2344- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2345- InstructionOperand outputs[2 ];
2346- size_t output_count = 0 ;
2347- outputs[output_count++] = g.DefineAsRegister (node);
2348+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2349+ InstructionOperand outputs[2 ];
2350+ size_t output_count = 0 ;
2351+ outputs[output_count++] = g.DefineAsRegister (node);
23482352
2349- Node* success_output = NodeProperties::FindProjection (node, 1 );
2350- if (success_output) {
2351- outputs[output_count++] = g.DefineAsRegister (success_output);
2352- }
2353+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2354+ if (success_output) {
2355+ outputs[output_count++] = g.DefineAsRegister (success_output);
2356+ }
23532357
2354- Emit (kArm64Float32ToInt64 , output_count, outputs, 1 , inputs);
2358+ Emit (kArm64Float32ToInt64 , output_count, outputs, 1 , inputs);
2359+ }
23552360}
23562361
23572362template <typename Adapter>
@@ -2372,89 +2377,111 @@ void InstructionSelectorT<Adapter>::VisitTruncateFloat64ToInt64(node_t node) {
23722377}
23732378
23742379template <typename Adapter>
2375- void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToInt64(Node* node) {
2376- Arm64OperandGeneratorT<Adapter> g (this );
2380+ void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToInt64(
2381+ node_t node) {
2382+ if constexpr (Adapter::IsTurboshaft) {
2383+ UNIMPLEMENTED ();
2384+ } else {
2385+ Arm64OperandGeneratorT<Adapter> g (this );
23772386
2378- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2379- InstructionOperand outputs[2 ];
2380- size_t output_count = 0 ;
2381- outputs[output_count++] = g.DefineAsRegister (node);
2387+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2388+ InstructionOperand outputs[2 ];
2389+ size_t output_count = 0 ;
2390+ outputs[output_count++] = g.DefineAsRegister (node);
23822391
2383- Node* success_output = NodeProperties::FindProjection (node, 1 );
2384- if (success_output) {
2385- outputs[output_count++] = g.DefineAsRegister (success_output);
2386- }
2392+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2393+ if (success_output) {
2394+ outputs[output_count++] = g.DefineAsRegister (success_output);
2395+ }
23872396
2388- Emit (kArm64Float64ToInt64 , output_count, outputs, 1 , inputs);
2397+ Emit (kArm64Float64ToInt64 , output_count, outputs, 1 , inputs);
2398+ }
23892399}
23902400
23912401template <typename Adapter>
23922402void InstructionSelectorT<Adapter>::VisitTryTruncateFloat32ToUint64(
2393- Node* node) {
2394- Arm64OperandGeneratorT<Adapter> g (this );
2403+ node_t node) {
2404+ if constexpr (Adapter::IsTurboshaft) {
2405+ UNIMPLEMENTED ();
2406+ } else {
2407+ Arm64OperandGeneratorT<Adapter> g (this );
23952408
2396- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2397- InstructionOperand outputs[2 ];
2398- size_t output_count = 0 ;
2399- outputs[output_count++] = g.DefineAsRegister (node);
2409+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2410+ InstructionOperand outputs[2 ];
2411+ size_t output_count = 0 ;
2412+ outputs[output_count++] = g.DefineAsRegister (node);
24002413
2401- Node* success_output = NodeProperties::FindProjection (node, 1 );
2402- if (success_output) {
2403- outputs[output_count++] = g.DefineAsRegister (success_output);
2404- }
2414+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2415+ if (success_output) {
2416+ outputs[output_count++] = g.DefineAsRegister (success_output);
2417+ }
24052418
2406- Emit (kArm64Float32ToUint64 , output_count, outputs, 1 , inputs);
2419+ Emit (kArm64Float32ToUint64 , output_count, outputs, 1 , inputs);
2420+ }
24072421}
24082422
24092423template <typename Adapter>
24102424void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToUint64(
2411- Node* node) {
2412- Arm64OperandGeneratorT<Adapter> g (this );
2425+ node_t node) {
2426+ if constexpr (Adapter::IsTurboshaft) {
2427+ UNIMPLEMENTED ();
2428+ } else {
2429+ Arm64OperandGeneratorT<Adapter> g (this );
24132430
2414- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2415- InstructionOperand outputs[2 ];
2416- size_t output_count = 0 ;
2417- outputs[output_count++] = g.DefineAsRegister (node);
2431+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2432+ InstructionOperand outputs[2 ];
2433+ size_t output_count = 0 ;
2434+ outputs[output_count++] = g.DefineAsRegister (node);
24182435
2419- Node* success_output = NodeProperties::FindProjection (node, 1 );
2420- if (success_output) {
2421- outputs[output_count++] = g.DefineAsRegister (success_output);
2422- }
2436+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2437+ if (success_output) {
2438+ outputs[output_count++] = g.DefineAsRegister (success_output);
2439+ }
24232440
2424- Emit (kArm64Float64ToUint64 , output_count, outputs, 1 , inputs);
2441+ Emit (kArm64Float64ToUint64 , output_count, outputs, 1 , inputs);
2442+ }
24252443}
24262444
24272445template <typename Adapter>
2428- void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToInt32(Node* node) {
2429- Arm64OperandGeneratorT<Adapter> g (this );
2430- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2431- InstructionOperand outputs[2 ];
2432- size_t output_count = 0 ;
2433- outputs[output_count++] = g.DefineAsRegister (node);
2446+ void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToInt32(
2447+ node_t node) {
2448+ if constexpr (Adapter::IsTurboshaft) {
2449+ UNIMPLEMENTED ();
2450+ } else {
2451+ Arm64OperandGeneratorT<Adapter> g (this );
2452+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2453+ InstructionOperand outputs[2 ];
2454+ size_t output_count = 0 ;
2455+ outputs[output_count++] = g.DefineAsRegister (node);
24342456
2435- Node* success_output = NodeProperties::FindProjection (node, 1 );
2436- if (success_output) {
2437- outputs[output_count++] = g.DefineAsRegister (success_output);
2438- }
2457+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2458+ if (success_output) {
2459+ outputs[output_count++] = g.DefineAsRegister (success_output);
2460+ }
24392461
2440- Emit (kArm64Float64ToInt32 , output_count, outputs, 1 , inputs);
2462+ Emit (kArm64Float64ToInt32 , output_count, outputs, 1 , inputs);
2463+ }
24412464}
24422465
24432466template <typename Adapter>
24442467void InstructionSelectorT<Adapter>::VisitTryTruncateFloat64ToUint32(
2445- Node* node) {
2446- Arm64OperandGeneratorT<Adapter> g (this );
2447- InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2448- InstructionOperand outputs[2 ];
2449- size_t output_count = 0 ;
2450- outputs[output_count++] = g.DefineAsRegister (node);
2468+ node_t node) {
2469+ if constexpr (Adapter::IsTurboshaft) {
2470+ UNIMPLEMENTED ();
2471+ } else {
2472+ Arm64OperandGeneratorT<Adapter> g (this );
2473+ InstructionOperand inputs[] = {g.UseRegister (node->InputAt (0 ))};
2474+ InstructionOperand outputs[2 ];
2475+ size_t output_count = 0 ;
2476+ outputs[output_count++] = g.DefineAsRegister (node);
24512477
2452- Node* success_output = NodeProperties::FindProjection (node, 1 );
2453- if (success_output) {
2454- outputs[output_count++] = g.DefineAsRegister (success_output);
2455- }
2478+ Node* success_output = NodeProperties::FindProjection (node, 1 );
2479+ if (success_output) {
2480+ outputs[output_count++] = g.DefineAsRegister (success_output);
2481+ }
24562482
2457- Emit (kArm64Float64ToUint32 , output_count, outputs, 1 , inputs);
2483+ Emit (kArm64Float64ToUint32 , output_count, outputs, 1 , inputs);
2484+ }
24582485}
24592486
24602487template <typename Adapter>
0 commit comments