brintos

brintos / llvm-project-archived public Read only

0
0
Text · 10.3 KiB · 2c212b9 Raw
229 lines · plain
1;; Test disassembly for gfx10 kernel descriptor.2 3; RUN: rm -rf %t && split-file %s %t && cd %t4 5;--- 1.s6; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize32,-wavefrontsize64 -filetype=obj -mcpu=gfx1010 < 1.s > 1.o7; RUN: echo '.amdhsa_code_object_version 5' > 1-disasm.s8; RUN: llvm-objdump --disassemble-symbols=kernel.kd 1.o | tail -n +7 | tee -a 1-disasm.s | FileCheck 1.s9; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize32,-wavefrontsize64 -filetype=obj -mcpu=gfx1010 < 1-disasm.s > 1-disasm.o10; RUN: cmp 1.o 1-disasm.o11; CHECK: .amdhsa_kernel kernel12; CHECK-NEXT: .amdhsa_group_segment_fixed_size 013; CHECK-NEXT: .amdhsa_private_segment_fixed_size 014; CHECK-NEXT: .amdhsa_kernarg_size 015; CHECK-NEXT: ; SHARED_VGPR_COUNT 016; CHECK-NEXT: .amdhsa_next_free_vgpr 3217; CHECK-NEXT: .amdhsa_reserve_vcc 018; CHECK-NEXT: .amdhsa_reserve_flat_scratch 019; CHECK-NEXT: .amdhsa_reserve_xnack_mask 020; CHECK-NEXT: .amdhsa_next_free_sgpr 821; CHECK-NEXT: .amdhsa_float_round_mode_32 022; CHECK-NEXT: .amdhsa_float_round_mode_16_64 023; CHECK-NEXT: .amdhsa_float_denorm_mode_32 024; CHECK-NEXT: .amdhsa_float_denorm_mode_16_64 325; CHECK-NEXT: .amdhsa_dx10_clamp 126; CHECK-NEXT: .amdhsa_ieee_mode 127; CHECK-NEXT: .amdhsa_fp16_overflow 028; CHECK-NEXT: .amdhsa_workgroup_processor_mode 129; CHECK-NEXT: .amdhsa_memory_ordered 130; CHECK-NEXT: .amdhsa_forward_progress 131; CHECK-NEXT: .amdhsa_system_sgpr_private_segment_wavefront_offset 032; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_x 133; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_y 034; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_z 035; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_info 036; CHECK-NEXT: .amdhsa_system_vgpr_workitem_id 037; CHECK-NEXT: .amdhsa_exception_fp_ieee_invalid_op 038; CHECK-NEXT: .amdhsa_exception_fp_denorm_src 039; CHECK-NEXT: .amdhsa_exception_fp_ieee_div_zero 040; CHECK-NEXT: .amdhsa_exception_fp_ieee_overflow 041; CHECK-NEXT: .amdhsa_exception_fp_ieee_underflow 042; CHECK-NEXT: .amdhsa_exception_fp_ieee_inexact 043; CHECK-NEXT: .amdhsa_exception_int_div_zero 044; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_buffer 045; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_ptr 046; CHECK-NEXT: .amdhsa_user_sgpr_queue_ptr 047; CHECK-NEXT: .amdhsa_user_sgpr_kernarg_segment_ptr 048; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_id 049; CHECK-NEXT: .amdhsa_user_sgpr_flat_scratch_init 050; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_size 051; CHECK-NEXT: .amdhsa_wavefront_size32 152; CHECK-NEXT: .amdhsa_uses_dynamic_stack 053; CHECK-NEXT: .end_amdhsa_kernel54.amdhsa_code_object_version 555.amdhsa_kernel kernel56  .amdhsa_next_free_vgpr 3257  .amdhsa_next_free_sgpr 3258  .amdhsa_wavefront_size32 159.end_amdhsa_kernel60 61;--- 2.s62; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 2.s > 2.o63; RUN: echo '.amdhsa_code_object_version 5' > 2-disasm.s64; RUN: llvm-objdump --disassemble-symbols=kernel.kd 2.o | tail -n +7 | tee -a 2-disasm.s | FileCheck 2.s65; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 2-disasm.s > 2-disasm.o66; RUN: cmp 2.o 2-disasm.o67; CHECK: .amdhsa_kernel kernel68; CHECK-NEXT: .amdhsa_group_segment_fixed_size 069; CHECK-NEXT: .amdhsa_private_segment_fixed_size 070; CHECK-NEXT: .amdhsa_kernarg_size 071; CHECK-NEXT: .amdhsa_shared_vgpr_count 072; CHECK-NEXT: .amdhsa_next_free_vgpr 3273; CHECK-NEXT: .amdhsa_reserve_vcc 074; CHECK-NEXT: .amdhsa_reserve_flat_scratch 075; CHECK-NEXT: .amdhsa_reserve_xnack_mask 076; CHECK-NEXT: .amdhsa_next_free_sgpr 877; CHECK-NEXT: .amdhsa_float_round_mode_32 078; CHECK-NEXT: .amdhsa_float_round_mode_16_64 079; CHECK-NEXT: .amdhsa_float_denorm_mode_32 080; CHECK-NEXT: .amdhsa_float_denorm_mode_16_64 381; CHECK-NEXT: .amdhsa_dx10_clamp 182; CHECK-NEXT: .amdhsa_ieee_mode 183; CHECK-NEXT: .amdhsa_fp16_overflow 084; CHECK-NEXT: .amdhsa_workgroup_processor_mode 185; CHECK-NEXT: .amdhsa_memory_ordered 186; CHECK-NEXT: .amdhsa_forward_progress 187; CHECK-NEXT: .amdhsa_system_sgpr_private_segment_wavefront_offset 088; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_x 189; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_y 090; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_z 091; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_info 092; CHECK-NEXT: .amdhsa_system_vgpr_workitem_id 093; CHECK-NEXT: .amdhsa_exception_fp_ieee_invalid_op 094; CHECK-NEXT: .amdhsa_exception_fp_denorm_src 095; CHECK-NEXT: .amdhsa_exception_fp_ieee_div_zero 096; CHECK-NEXT: .amdhsa_exception_fp_ieee_overflow 097; CHECK-NEXT: .amdhsa_exception_fp_ieee_underflow 098; CHECK-NEXT: .amdhsa_exception_fp_ieee_inexact 099; CHECK-NEXT: .amdhsa_exception_int_div_zero 0100; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_buffer 0101; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_ptr 0102; CHECK-NEXT: .amdhsa_user_sgpr_queue_ptr 0103; CHECK-NEXT: .amdhsa_user_sgpr_kernarg_segment_ptr 0104; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_id 0105; CHECK-NEXT: .amdhsa_user_sgpr_flat_scratch_init 0106; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_size 0107; CHECK-NEXT: .amdhsa_wavefront_size32 0108; CHECK-NEXT: .amdhsa_uses_dynamic_stack 0109; CHECK-NEXT: .end_amdhsa_kernel110.amdhsa_code_object_version 5111.amdhsa_kernel kernel112  .amdhsa_next_free_vgpr 32113  .amdhsa_next_free_sgpr 32114  .amdhsa_shared_vgpr_count 0115.end_amdhsa_kernel116 117;--- 3.s118; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 3.s > 3.o119; RUN: echo '.amdhsa_code_object_version 5' > 3-disasm.s120; RUN: llvm-objdump --disassemble-symbols=kernel.kd 3.o | tail -n +7 | tee -a 3-disasm.s | FileCheck 3.s121; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 3-disasm.s > 3-disasm.o122; RUN: cmp 3.o 3-disasm.o123; CHECK: .amdhsa_kernel kernel124; CHECK-NEXT: .amdhsa_group_segment_fixed_size 0125; CHECK-NEXT: .amdhsa_private_segment_fixed_size 0126; CHECK-NEXT: .amdhsa_kernarg_size 0127; CHECK-NEXT: .amdhsa_shared_vgpr_count 1128; CHECK-NEXT: .amdhsa_next_free_vgpr 32129; CHECK-NEXT: .amdhsa_reserve_vcc 0130; CHECK-NEXT: .amdhsa_reserve_flat_scratch 0131; CHECK-NEXT: .amdhsa_reserve_xnack_mask 0132; CHECK-NEXT: .amdhsa_next_free_sgpr 8133; CHECK-NEXT: .amdhsa_float_round_mode_32 0134; CHECK-NEXT: .amdhsa_float_round_mode_16_64 0135; CHECK-NEXT: .amdhsa_float_denorm_mode_32 0136; CHECK-NEXT: .amdhsa_float_denorm_mode_16_64 3137; CHECK-NEXT: .amdhsa_dx10_clamp 1138; CHECK-NEXT: .amdhsa_ieee_mode 1139; CHECK-NEXT: .amdhsa_fp16_overflow 0140; CHECK-NEXT: .amdhsa_workgroup_processor_mode 1141; CHECK-NEXT: .amdhsa_memory_ordered 1142; CHECK-NEXT: .amdhsa_forward_progress 1143; CHECK-NEXT: .amdhsa_system_sgpr_private_segment_wavefront_offset 0144; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_x 1145; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_y 0146; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_z 0147; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_info 0148; CHECK-NEXT: .amdhsa_system_vgpr_workitem_id 0149; CHECK-NEXT: .amdhsa_exception_fp_ieee_invalid_op 0150; CHECK-NEXT: .amdhsa_exception_fp_denorm_src 0151; CHECK-NEXT: .amdhsa_exception_fp_ieee_div_zero 0152; CHECK-NEXT: .amdhsa_exception_fp_ieee_overflow 0153; CHECK-NEXT: .amdhsa_exception_fp_ieee_underflow 0154; CHECK-NEXT: .amdhsa_exception_fp_ieee_inexact 0155; CHECK-NEXT: .amdhsa_exception_int_div_zero 0156; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_buffer 0157; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_ptr 0158; CHECK-NEXT: .amdhsa_user_sgpr_queue_ptr 0159; CHECK-NEXT: .amdhsa_user_sgpr_kernarg_segment_ptr 0160; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_id 0161; CHECK-NEXT: .amdhsa_user_sgpr_flat_scratch_init 0162; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_size 0163; CHECK-NEXT: .amdhsa_wavefront_size32 0164; CHECK-NEXT: .amdhsa_uses_dynamic_stack 0165; CHECK-NEXT: .end_amdhsa_kernel166.amdhsa_code_object_version 5167.amdhsa_kernel kernel168  .amdhsa_next_free_vgpr 32169  .amdhsa_next_free_sgpr 32170  .amdhsa_shared_vgpr_count 1171.end_amdhsa_kernel172 173;--- 4.s174; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 4.s > 4.o175; RUN: echo '.amdhsa_code_object_version 5' > 4-disasm.s176; RUN: llvm-objdump --disassemble-symbols=kernel.kd 4.o | tail -n +7 | tee -a 4-disasm.s | FileCheck 4.s177; RUN: llvm-mc --triple=amdgcn-amd-amdhsa -mattr=-xnack,+wavefrontsize64,-wavefrontsize32 -filetype=obj -mcpu=gfx1010 < 4-disasm.s > 4-disasm.o178; RUN: cmp 4.o 4-disasm.o179; CHECK: .amdhsa_kernel kernel180; CHECK-NEXT: .amdhsa_group_segment_fixed_size 0181; CHECK-NEXT: .amdhsa_private_segment_fixed_size 0182; CHECK-NEXT: .amdhsa_kernarg_size 0183; CHECK-NEXT: .amdhsa_shared_vgpr_count 1184; CHECK-NEXT: .amdhsa_next_free_vgpr 32185; CHECK-NEXT: .amdhsa_reserve_vcc 0186; CHECK-NEXT: .amdhsa_reserve_flat_scratch 0187; CHECK-NEXT: .amdhsa_reserve_xnack_mask 0188; CHECK-NEXT: .amdhsa_next_free_sgpr 8189; CHECK-NEXT: .amdhsa_float_round_mode_32 0190; CHECK-NEXT: .amdhsa_float_round_mode_16_64 0191; CHECK-NEXT: .amdhsa_float_denorm_mode_32 0192; CHECK-NEXT: .amdhsa_float_denorm_mode_16_64 3193; CHECK-NEXT: .amdhsa_dx10_clamp 1194; CHECK-NEXT: .amdhsa_ieee_mode 1195; CHECK-NEXT: .amdhsa_fp16_overflow 0196; CHECK-NEXT: .amdhsa_workgroup_processor_mode 1197; CHECK-NEXT: .amdhsa_memory_ordered 1198; CHECK-NEXT: .amdhsa_forward_progress 1199; CHECK-NEXT: .amdhsa_system_sgpr_private_segment_wavefront_offset 0200; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_x 1201; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_y 0202; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_id_z 0203; CHECK-NEXT: .amdhsa_system_sgpr_workgroup_info 0204; CHECK-NEXT: .amdhsa_system_vgpr_workitem_id 0205; CHECK-NEXT: .amdhsa_exception_fp_ieee_invalid_op 0206; CHECK-NEXT: .amdhsa_exception_fp_denorm_src 0207; CHECK-NEXT: .amdhsa_exception_fp_ieee_div_zero 0208; CHECK-NEXT: .amdhsa_exception_fp_ieee_overflow 0209; CHECK-NEXT: .amdhsa_exception_fp_ieee_underflow 0210; CHECK-NEXT: .amdhsa_exception_fp_ieee_inexact 0211; CHECK-NEXT: .amdhsa_exception_int_div_zero 0212; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_buffer 0213; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_ptr 0214; CHECK-NEXT: .amdhsa_user_sgpr_queue_ptr 0215; CHECK-NEXT: .amdhsa_user_sgpr_kernarg_segment_ptr 0216; CHECK-NEXT: .amdhsa_user_sgpr_dispatch_id 0217; CHECK-NEXT: .amdhsa_user_sgpr_flat_scratch_init 0218; CHECK-NEXT: .amdhsa_user_sgpr_private_segment_size 0219; CHECK-NEXT: .amdhsa_wavefront_size32 0220; CHECK-NEXT: .amdhsa_uses_dynamic_stack 0221; CHECK-NEXT: .end_amdhsa_kernel222.amdhsa_code_object_version 5223.amdhsa_kernel kernel224  .amdhsa_next_free_vgpr 32225  .amdhsa_next_free_sgpr 32226  .amdhsa_shared_vgpr_count 1227  .amdhsa_wavefront_size32 0228.end_amdhsa_kernel229