Dmitry Preobrazhensky
1d572ce395
[AMDGPU][MC] Enabled constant expressions as operands of sendmsg
...
See bug 40820: https://bugs.llvm.org/show_bug.cgi?id=40820
Reviewers: artem.tamazov, arsenm
Differential Revision: https://reviews.llvm.org/D62735
llvm-svn: 364645
2019-06-28 14:14:02 +00:00
Tim Renouf
d2fdb956e0
[AMDGPU] Allow any value in unused src0 field in v_nop
...
Summary:
The LLVM disassembler assumes that the unused src0 operand of v_nop is
zero. Other tools can put another value in that field, which is still
valid. This commit fixes the LLVM disassembler to recognize such an
encoding as v_nop, in the same way as we already do for s_getpc.
Differential Revision: https://reviews.llvm.org/D63724
Change-Id: Iaf0363eae26ff92fc4ebc716216476adbff37a6f
llvm-svn: 364208
2019-06-24 17:35:20 +00:00
Stanislav Mekhanoshin
e917b3b4b8
[AMDGPU] gfx10 tests. NFC.
...
llvm-svn: 363946
2019-06-20 16:29:40 +00:00
Stanislav Mekhanoshin
0846c125f9
[AMDGPU] gfx1010 core wave32 changes
...
Differential Revision: https://reviews.llvm.org/D63204
llvm-svn: 363934
2019-06-20 15:08:34 +00:00
Stanislav Mekhanoshin
c43e67bfff
[AMDGPU] gfx1011/gfx1012 targets
...
Differential Revision: https://reviews.llvm.org/D63307
llvm-svn: 363344
2019-06-14 00:33:31 +00:00
Dmitry Preobrazhensky
9111f35f02
[AMDGPU][MC] Added support of SCC, VCCZ and EXECZ operands
...
See bug 39292: https://bugs.llvm.org/show_bug.cgi?id=39292
Reviewers: rampitec, arsenm
Differential Revision: https://reviews.llvm.org/D62660
llvm-svn: 362400
2019-06-03 13:51:24 +00:00
Dmitry Preobrazhensky
5ae3113969
[AMDGPU][MC] Enabled labels with s_call_b64 and s_cbranch_i_fork
...
See https://bugs.llvm.org/show_bug.cgi?id=41888
Reviewers: artem.tamazov, arsenm
Differential Revision: https://reviews.llvm.org/D62016
llvm-svn: 361040
2019-05-17 14:57:04 +00:00
Stanislav Mekhanoshin
d9930d499a
[AMDGPU] gfx1010 tests. NFC.
...
llvm-svn: 360615
2019-05-13 19:30:06 +00:00
Stanislav Mekhanoshin
327626368c
[AMDGPU] gfx1010 tests. NFC.
...
Added tests which now pass after code commits.
llvm-svn: 360300
2019-05-08 23:31:32 +00:00
Stanislav Mekhanoshin
1dbf721315
[AMDGPU] gfx1010 exp modifications
...
Differential Revision: https://reviews.llvm.org/D61701
llvm-svn: 360287
2019-05-08 21:23:37 +00:00
Stanislav Mekhanoshin
5cf8167735
[AMDGPU] gfx1010 allows VOP3 to have a literal
...
Differential Revision: https://reviews.llvm.org/D61413
llvm-svn: 359756
2019-05-02 04:01:39 +00:00
Stanislav Mekhanoshin
692560dc98
[AMDGPU] gfx1010 MIMG implementation
...
Differential Revision: https://reviews.llvm.org/D61339
llvm-svn: 359698
2019-05-01 16:32:58 +00:00
Stanislav Mekhanoshin
8f3da70eed
[AMDGPU] gfx1010 VOP2 changes
...
Differential Revision: https://reviews.llvm.org/D61156
llvm-svn: 359316
2019-04-26 16:37:51 +00:00
Dmitry Preobrazhensky
137976fae2
[AMDGPU][MC][GFX9] Added support of operands shared_base, shared_limit, private_base, private_limit, pops_exiting_wave_id
...
See bug 39297: https://bugs.llvm.org/show_bug.cgi?id=39297
Reviewers: artem.tamazov, arsenm, rampitec
Differential Revision: https://reviews.llvm.org/D59290
llvm-svn: 356561
2019-03-20 15:40:52 +00:00
Tim Renouf
cfdfba996b
[AMDGPU] Asm/disasm clamp modifier on vop3 int arithmetic
...
Allow the clamp modifier on vop3 int arithmetic instructions in assembly
and disassembly.
This involved adding a clamp operand to the affected instructions in MIR
and MC, and thus having to fix up several places in codegen and MIR
tests.
Differential Revision: https://reviews.llvm.org/D59267
Change-Id: Ic7775105f02a985b668fa658a0cd7837846a534e
llvm-svn: 356399
2019-03-18 19:35:44 +00:00
Tim Renouf
2e94f6e584
[AMDGPU] Asm/disasm v_cndmask_b32_e64 with abs/neg source modifiers
...
This commit allows v_cndmask_b32_e64 with abs, neg source
modifiers on src0, src1 to be assembled and disassembled.
This does appear to be allowed, even though they are floating point
modifiers and the operand type is b32.
To do this, I added src0_modifiers and src1_modifiers to the
MachineInstr, which involved fixing up several places in codegen and mir
tests.
Differential Revision: https://reviews.llvm.org/D59191
Change-Id: I69bf4a8c73ebc65744f6110bb8fc4e937d79fbea
llvm-svn: 356398
2019-03-18 19:25:39 +00:00
Dmitry Preobrazhensky
6023d5990d
[AMDGPU][MC] Enable lds_direct operand for v_readfirstlane_b32, v_readlane_b32 and v_writelane_b32
...
See bug 40662: https://bugs.llvm.org/show_bug.cgi?id=40662
Reviewers: artem.tamazov, arsenm, rampitec
Differential Revision: https://reviews.llvm.org/D58713
llvm-svn: 355312
2019-03-04 12:48:32 +00:00
Dmitry Preobrazhensky
ef92035827
[AMDGPU][MC][GFX8+] Added syntactic sugar for 'vgpr index' operand of instructions s_set_gpr_idx_on and s_set_gpr_idx_mode
...
See bug 39331: https://bugs.llvm.org/show_bug.cgi?id=39331
Reviewers: artem.tamazov, arsenm
Differential Revision: https://reviews.llvm.org/D58288
llvm-svn: 354969
2019-02-27 13:12:12 +00:00
Dmitry Preobrazhensky
942c273d64
[AMDGPU][MC] Added support of lds_direct operand
...
See bug 39293: https://bugs.llvm.org/show_bug.cgi?id=39293
Reviewers: artem.tamazov, rampitec
Differential Revision: https://reviews.llvm.org/D57889
llvm-svn: 353524
2019-02-08 14:57:37 +00:00
Dmitry Preobrazhensky
6bc26aaada
[AMDGPU][MC][GFX8+][DISASSEMBLER] Corrected 1/2pi value for 64-bit operands
...
See bug 39332: https://bugs.llvm.org/show_bug.cgi?id=39332
Reviewers: artem.tamazov, arsenm
Differential Revision: https://reviews.llvm.org/D56794
llvm-svn: 351555
2019-01-18 15:17:17 +00:00
Konstantin Zhuravlyov
f13c9969fc
AMDGPU: Fix v_dot{4, 8}* instruction encoding
...
Differential Revision: https://reviews.llvm.org/D46848
llvm-svn: 332387
2018-05-15 19:32:47 +00:00
Konstantin Zhuravlyov
603a43fcd5
AMDGPU: Add disasm tests for deep learning instructions + fix v_fmac_f32 disasm
...
Differential Revision: https://reviews.llvm.org/D46853
llvm-svn: 332377
2018-05-15 17:39:13 +00:00
Matt Arsenault
0084adc516
AMDGPU: Add Vega12 and Vega20
...
Changes by
Matt Arsenault
Konstantin Zhuravlyov
llvm-svn: 331215
2018-04-30 19:08:16 +00:00
Dmitry Preobrazhensky
4c45e6ff0e
[AMDGPU][MC][VI][GFX9] Added support of SDWA/DPP for v_cndmask_b32
...
See bug 36356: https://bugs.llvm.org/show_bug.cgi?id=36356
Differential Revision: https://reviews.llvm.org/D45446
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 330123
2018-04-16 12:41:38 +00:00
Dmitry Preobrazhensky
fc715551a3
[AMDGPU][MC][GFX9] Added v_screen_partition_4se_b32
...
See bug 36845: https://bugs.llvm.org/show_bug.cgi?id=36845
Differential Revision: https://reviews.llvm.org/D45443
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329801
2018-04-11 13:13:30 +00:00
Dmitry Preobrazhensky
2f8e146ad3
[AMDGPU][MC][GFX9] Added instructions s_mul_hi_*32, s_lshl*_add_u32
...
See bugs
36841: https://bugs.llvm.org/show_bug.cgi?id=36841
36842: https://bugs.llvm.org/show_bug.cgi?id=36842
Differential Revision: https://reviews.llvm.org/D45251
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329562
2018-04-09 13:10:33 +00:00
Dmitry Preobrazhensky
ae31223ba7
[AMDGPU][MC][GFX9] Added s_call_b64
...
See bug 36843: https://bugs.llvm.org/show_bug.cgi?id=36843
Differential Revision: https://reviews.llvm.org/D45268
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329440
2018-04-06 18:24:49 +00:00
Dmitry Preobrazhensky
306b1a0119
[AMDGPU][MC][GFX9] Added instruction s_endpgm_ordered_ps_done
...
See bug 36844: https://bugs.llvm.org/show_bug.cgi?id=36844
Differential Revision: https://reviews.llvm.org/D45313
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329430
2018-04-06 17:25:00 +00:00
Dmitry Preobrazhensky
f20aff565d
[AMDGPU][MC][GFX9] Added instructions *saveexec*, *wrexec* and *bitreplicate*
...
See bug 36840: https://bugs.llvm.org/show_bug.cgi?id=36840
Differential Revision: https://reviews.llvm.org/D45250
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329419
2018-04-06 16:35:11 +00:00
Dmitry Preobrazhensky
59399ae4cc
[AMDGPU][MC][VI][GFX9] Added s_atc_probe* instructions
...
See bug 36839: https://bugs.llvm.org/show_bug.cgi?id=36839
Differential Revision: https://reviews.llvm.org/D45249
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329408
2018-04-06 15:48:39 +00:00
Dmitry Preobrazhensky
4732d876ee
[AMDGPU][MC][GFX9] Added s_dcache_discard* instructions
...
See bug 36838: https://bugs.llvm.org/show_bug.cgi?id=36838
Differential Revision: https://reviews.llvm.org/D45247
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 329397
2018-04-06 15:08:42 +00:00
Dmitry Preobrazhensky
b181c7312e
[AMDGPU][MC][GFX9] Added instructions v_cvt_norm_*16_f16, v_sat_pk_u8_i16
...
See bug 36847: https://bugs.llvm.org/show_bug.cgi?id=36847
Differential Revision: https://reviews.llvm.org/D45097
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 328988
2018-04-02 17:09:20 +00:00
Dmitry Preobrazhensky
6bad04ecf5
[AMDGPU][MC][GFX9] Added s_atomic_* and s_buffer_atomic_* instructions
...
Fixed a bug which caused Tablegen crash.
See bug 36837: https://bugs.llvm.org/show_bug.cgi?id=36837
Differential Revision: https://reviews.llvm.org/D45085
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 328983
2018-04-02 16:10:25 +00:00
Nico Weber
f492f58182
Revert r328975, it makes TableGen assert on the bots.
...
llvm-svn: 328978
2018-04-02 14:20:23 +00:00
Dmitry Preobrazhensky
32c450ae6a
[AMDGPU][MC][GFX9] Added s_atomic_* and s_buffer_atomic_* instructions
...
See bug 36837: https://bugs.llvm.org/show_bug.cgi?id=36837
Differential Revision: https://reviews.llvm.org/D45085
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 328975
2018-04-02 13:52:23 +00:00
Dmitry Preobrazhensky
622bde8bc7
[AMDGPU][MC] Added ds_add_src2_f32
...
See bug 36833: https://bugs.llvm.org/show_bug.cgi?id=36833
Differential Revision: https://reviews.llvm.org/D44779
Reviewers: arsenm, artem.tamazov, timcorringham
llvm-svn: 328713
2018-03-28 16:21:56 +00:00
Dmitry Preobrazhensky
2456ac696a
[AMDGPU][MC] Added PCK variants of image load/store instructions
...
See bug 36834: https://bugs.llvm.org/show_bug.cgi?id=36834
Differential Revision: https://reviews.llvm.org/D44795
Reviewers: artem.tamazov, arsenm, timcorringham, nhaehnle
llvm-svn: 328710
2018-03-28 15:44:16 +00:00
Dmitry Preobrazhensky
a917e88585
[AMDGPU][MC][GFX9] Added buffer_*_format_d16_hi_x
...
See bug 36835: https://bugs.llvm.org/show_bug.cgi?id=36835
Differential Revision: https://reviews.llvm.org/D44825
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 328707
2018-03-28 14:53:13 +00:00
Dmitry Preobrazhensky
dd2b929ffb
[AMDGPU][MC][GFX9] Added s_scratch* instructions
...
See bug 36836: https://bugs.llvm.org/show_bug.cgi?id=36836
Differential Revision: https://reviews.llvm.org/D44832
Reviewers: artem.tamazov, arsenm, timcorringham
llvm-svn: 328704
2018-03-28 14:08:03 +00:00
Dmitry Preobrazhensky
4c8f4234b6
[AMDGPU][MC][GFX8][GFX9][DISASSEMBLER] Added "_e32" suffix to 32-bit VINTRP opcodes
...
See bug 36751: https://bugs.llvm.org/show_bug.cgi?id=36751
Differential Revision: https://reviews.llvm.org/D44529
Reviewers: artem.tamazov, arsenm
llvm-svn: 327723
2018-03-16 16:38:04 +00:00
Dmitry Preobrazhensky
9c1a6e7e24
[AMDGPU][MC] Corrected default values for unused SDWA operands
...
See bug 36355: https://bugs.llvm.org/show_bug.cgi?id=36355
Differential Revision: https://reviews.llvm.org/D44481
Reviewers: artem.tamazov, arsenm
llvm-svn: 327720
2018-03-16 15:40:27 +00:00
Dmitry Preobrazhensky
d98c97b4f9
[AMDGPU][MC][GFX8] Added BUFFER_STORE_LDS_DWORD Instruction
...
See bug 36558: https://bugs.llvm.org/show_bug.cgi?id=36558
Differential Revision: https://reviews.llvm.org/D43950
Reviewers: artem.tamazov, arsenm
llvm-svn: 327299
2018-03-12 17:29:24 +00:00
Dmitry Preobrazhensky
da4a7c01bf
[AMDGPU][MC] Corrected GATHER4 opcodes
...
See bug 36252: https://bugs.llvm.org/show_bug.cgi?id=36252
Differential Revision: https://reviews.llvm.org/D43874
Reviewers: artem.tamazov, arsenm
llvm-svn: 327278
2018-03-12 15:03:34 +00:00
Dmitry Preobrazhensky
d6e1a9404d
[AMDGPU][MC] Added lds support for MUBUF instructions
...
See bug 28234: https://bugs.llvm.org/show_bug.cgi?id=28234
Differential Revision: https://reviews.llvm.org/D43472
Reviewers: vpykhtin, artem.tamazov, arsenm
llvm-svn: 325676
2018-02-21 13:13:48 +00:00
Dmitry Preobrazhensky
0a1ff464e1
[AMDGPU][MC] Corrected dst/data size for MIMG opcodes with d16 modifier
...
See bug 36154: https://bugs.llvm.org/show_bug.cgi?id=36154
Differential Revision: https://reviews.llvm.org/D42847
Reviewers: cfang, artem.tamazov, arsenm
llvm-svn: 324237
2018-02-05 14:18:53 +00:00
Changpeng Fang
0905870f93
AMDGPU/SI: Add decoding in the GFX80_UNPACKED decoding namespace.
...
Reviewer:
Dmitry (dp).
Differential Revision:
https://reviews.llvm.org/D42596
llvm-svn: 323785
2018-01-30 16:42:40 +00:00
Dmitry Preobrazhensky
4f321aef74
[AMDGPU][MC] Corrected parsing of image opcode modifiers r128 and d16
...
See bugs 36092, 36093:
https://bugs.llvm.org/show_bug.cgi?id=36092
https://bugs.llvm.org/show_bug.cgi?id=36093
Differential Revision: https://reviews.llvm.org/D42583
Reviewers: vpykhtin, artem.tamazov, arsenm
llvm-svn: 323651
2018-01-29 14:20:42 +00:00
Dmitry Preobrazhensky
0b4eb1ead1
[AMDGPU][MC] Added support of 64-bit image atomics
...
See bug 35998: https://bugs.llvm.org/show_bug.cgi?id=35998
Differential Revision: https://reviews.llvm.org/D42469
Reviewers: vpykhtin, artem.tamazov, arsenm
llvm-svn: 323534
2018-01-26 15:43:29 +00:00
Dmitry Preobrazhensky
6cb42e7622
[AMDGPU][MC] Enabled disassembler for image atomic operations
...
See bug 35988: https://bugs.llvm.org/show_bug.cgi?id=35988
Differential Revision: https://reviews.llvm.org/D42186
Reviewers: vpykhtin, artem.tamazov, arsenm
llvm-svn: 323527
2018-01-26 14:07:38 +00:00
Dmitry Preobrazhensky
6b65f7c380
[AMDGPU][MC][GFX9] Enable inline constants for SDWA operands
...
See bug 35771: https://bugs.llvm.org/show_bug.cgi?id=35771
Differential Revision: https://reviews.llvm.org/D42058
Reviewers: vpykhtin, artem.tamazov, arsenm
llvm-svn: 322655
2018-01-17 14:00:48 +00:00