diff options
author | Francis Visoiu Mistrih <francisvm@yahoo.com> | 2017-12-07 10:40:31 +0000 |
---|---|---|
committer | Francis Visoiu Mistrih <francisvm@yahoo.com> | 2017-12-07 10:40:31 +0000 |
commit | a8a83d150f489733353b3bff0891248f59a0794c (patch) | |
tree | aa7c9a64cb3f5d7982b775f2e082c07ebfe74b49 /llvm/test/CodeGen/X86/clz.ll | |
parent | 62ef18562b5494567c601be41761cf8449960ad4 (diff) | |
download | bcm5719-llvm-a8a83d150f489733353b3bff0891248f59a0794c.tar.gz bcm5719-llvm-a8a83d150f489733353b3bff0891248f59a0794c.zip |
[CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register.
Work towards the unification of MIR and debug output by refactoring the
interfaces.
For MachineOperand::print, keep a simple version that can be easily called
from `dump()`, and a more complex one which will be called from both the
MIRPrinter and MachineInstr::print.
Add extra checks inside MachineOperand for detached operands (operands
with getParent() == nullptr).
https://reviews.llvm.org/D40836
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/kill: ([^ ]+) ([^ ]+)<def> ([^ ]+)/kill: \1 def \2 \3/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/kill: ([^ ]+) ([^ ]+) ([^ ]+)<def>/kill: \1 \2 def \3/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/kill: def ([^ ]+) ([^ ]+) ([^ ]+)<def>/kill: def \1 \2 def \3/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/<def>//g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<kill>/killed \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<imp-use,kill>/implicit killed \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<dead>/dead \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<def[ ]*,[ ]*dead>/dead \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<imp-def[ ]*,[ ]*dead>/implicit-def dead \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<imp-def>/implicit-def \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<imp-use>/implicit \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<internal>/internal \1/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" -o -name "*.s" \) -type f -print0 | xargs -0 sed -i '' -E 's/([^ ]+)<undef>/undef \1/g'
llvm-svn: 320022
Diffstat (limited to 'llvm/test/CodeGen/X86/clz.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/clz.ll | 68 |
1 files changed, 34 insertions, 34 deletions
diff --git a/llvm/test/CodeGen/X86/clz.ll b/llvm/test/CodeGen/X86/clz.ll index 5f58e79a94e..bd63a8006e5 100644 --- a/llvm/test/CodeGen/X86/clz.ll +++ b/llvm/test/CodeGen/X86/clz.ll @@ -19,28 +19,28 @@ define i8 @cttz_i8(i8 %x) { ; X32: # %bb.0: ; X32-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-NEXT: bsfl %eax, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: cttz_i8: ; X64: # %bb.0: ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsfl %eax, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: cttz_i8: ; X32-CLZ: # %bb.0: ; X32-CLZ-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-CLZ-NEXT: tzcntl %eax, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: cttz_i8: ; X64-CLZ: # %bb.0: ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: tzcntl %eax, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %tmp = call i8 @llvm.cttz.i8( i8 %x, i1 true ) ret i8 %tmp @@ -144,7 +144,7 @@ define i8 @ctlz_i8(i8 %x) { ; X32-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-NEXT: bsrl %eax, %eax ; X32-NEXT: xorl $7, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: ctlz_i8: @@ -152,7 +152,7 @@ define i8 @ctlz_i8(i8 %x) { ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsrl %eax, %eax ; X64-NEXT: xorl $7, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: ctlz_i8: @@ -160,7 +160,7 @@ define i8 @ctlz_i8(i8 %x) { ; X32-CLZ-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-CLZ-NEXT: lzcntl %eax, %eax ; X32-CLZ-NEXT: addl $-24, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: ctlz_i8: @@ -168,7 +168,7 @@ define i8 @ctlz_i8(i8 %x) { ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: lzcntl %eax, %eax ; X64-CLZ-NEXT: addl $-24, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %tmp2 = call i8 @llvm.ctlz.i8( i8 %x, i1 true ) ret i8 %tmp2 @@ -179,14 +179,14 @@ define i16 @ctlz_i16(i16 %x) { ; X32: # %bb.0: ; X32-NEXT: bsrw {{[0-9]+}}(%esp), %ax ; X32-NEXT: xorl $15, %eax -; X32-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X32-NEXT: # kill: def %ax killed %ax killed %eax ; X32-NEXT: retl ; ; X64-LABEL: ctlz_i16: ; X64: # %bb.0: ; X64-NEXT: bsrw %di, %ax ; X64-NEXT: xorl $15, %eax -; X64-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X64-NEXT: # kill: def %ax killed %ax killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: ctlz_i16: @@ -286,11 +286,11 @@ define i8 @ctlz_i8_zero_test(i8 %n) { ; X32-NEXT: movzbl %al, %eax ; X32-NEXT: bsrl %eax, %eax ; X32-NEXT: xorl $7, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; X32-NEXT: .LBB8_1: ; X32-NEXT: movb $8, %al -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: ctlz_i8_zero_test: @@ -301,11 +301,11 @@ define i8 @ctlz_i8_zero_test(i8 %n) { ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsrl %eax, %eax ; X64-NEXT: xorl $7, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; X64-NEXT: .LBB8_1: ; X64-NEXT: movb $8, %al -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: ctlz_i8_zero_test: @@ -313,7 +313,7 @@ define i8 @ctlz_i8_zero_test(i8 %n) { ; X32-CLZ-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-CLZ-NEXT: lzcntl %eax, %eax ; X32-CLZ-NEXT: addl $-24, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: ctlz_i8_zero_test: @@ -321,7 +321,7 @@ define i8 @ctlz_i8_zero_test(i8 %n) { ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: lzcntl %eax, %eax ; X64-CLZ-NEXT: addl $-24, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %tmp1 = call i8 @llvm.ctlz.i8(i8 %n, i1 false) ret i8 %tmp1 @@ -337,11 +337,11 @@ define i16 @ctlz_i16_zero_test(i16 %n) { ; X32-NEXT: # %bb.2: # %cond.false ; X32-NEXT: bsrw %ax, %ax ; X32-NEXT: xorl $15, %eax -; X32-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X32-NEXT: # kill: def %ax killed %ax killed %eax ; X32-NEXT: retl ; X32-NEXT: .LBB9_1: ; X32-NEXT: movw $16, %ax -; X32-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X32-NEXT: # kill: def %ax killed %ax killed %eax ; X32-NEXT: retl ; ; X64-LABEL: ctlz_i16_zero_test: @@ -351,11 +351,11 @@ define i16 @ctlz_i16_zero_test(i16 %n) { ; X64-NEXT: # %bb.2: # %cond.false ; X64-NEXT: bsrw %di, %ax ; X64-NEXT: xorl $15, %eax -; X64-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X64-NEXT: # kill: def %ax killed %ax killed %eax ; X64-NEXT: retq ; X64-NEXT: .LBB9_1: ; X64-NEXT: movw $16, %ax -; X64-NEXT: # kill: %ax<def> %ax<kill> %eax<kill> +; X64-NEXT: # kill: def %ax killed %ax killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: ctlz_i16_zero_test: @@ -480,11 +480,11 @@ define i8 @cttz_i8_zero_test(i8 %n) { ; X32-NEXT: # %bb.2: # %cond.false ; X32-NEXT: movzbl %al, %eax ; X32-NEXT: bsfl %eax, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; X32-NEXT: .LBB12_1 ; X32-NEXT: movb $8, %al -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: cttz_i8_zero_test: @@ -494,11 +494,11 @@ define i8 @cttz_i8_zero_test(i8 %n) { ; X64-NEXT: # %bb.2: # %cond.false ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsfl %eax, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; X64-NEXT: .LBB12_1: ; X64-NEXT: movb $8, %al -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: cttz_i8_zero_test: @@ -506,7 +506,7 @@ define i8 @cttz_i8_zero_test(i8 %n) { ; X32-CLZ-NEXT: movzbl {{[0-9]+}}(%esp), %eax ; X32-CLZ-NEXT: orl $256, %eax # imm = 0x100 ; X32-CLZ-NEXT: tzcntl %eax, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: cttz_i8_zero_test: @@ -514,7 +514,7 @@ define i8 @cttz_i8_zero_test(i8 %n) { ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: orl $256, %eax # imm = 0x100 ; X64-CLZ-NEXT: tzcntl %eax, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %tmp1 = call i8 @llvm.cttz.i8(i8 %n, i1 false) ret i8 %tmp1 @@ -786,7 +786,7 @@ define i8 @cttz_i8_knownbits(i8 %x) { ; X32-NEXT: orb $2, %al ; X32-NEXT: movzbl %al, %eax ; X32-NEXT: bsfl %eax, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: cttz_i8_knownbits: @@ -794,7 +794,7 @@ define i8 @cttz_i8_knownbits(i8 %x) { ; X64-NEXT: orb $2, %dil ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsfl %eax, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: cttz_i8_knownbits: @@ -803,7 +803,7 @@ define i8 @cttz_i8_knownbits(i8 %x) { ; X32-CLZ-NEXT: orb $2, %al ; X32-CLZ-NEXT: movzbl %al, %eax ; X32-CLZ-NEXT: tzcntl %eax, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: cttz_i8_knownbits: @@ -811,7 +811,7 @@ define i8 @cttz_i8_knownbits(i8 %x) { ; X64-CLZ-NEXT: orb $2, %dil ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: tzcntl %eax, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %x2 = or i8 %x, 2 %tmp = call i8 @llvm.cttz.i8(i8 %x2, i1 true ) @@ -827,7 +827,7 @@ define i8 @ctlz_i8_knownbits(i8 %x) { ; X32-NEXT: movzbl %al, %eax ; X32-NEXT: bsrl %eax, %eax ; X32-NEXT: xorl $7, %eax -; X32-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-NEXT: # kill: def %al killed %al killed %eax ; X32-NEXT: retl ; ; X64-LABEL: ctlz_i8_knownbits: @@ -836,7 +836,7 @@ define i8 @ctlz_i8_knownbits(i8 %x) { ; X64-NEXT: movzbl %dil, %eax ; X64-NEXT: bsrl %eax, %eax ; X64-NEXT: xorl $7, %eax -; X64-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-NEXT: # kill: def %al killed %al killed %eax ; X64-NEXT: retq ; ; X32-CLZ-LABEL: ctlz_i8_knownbits: @@ -846,7 +846,7 @@ define i8 @ctlz_i8_knownbits(i8 %x) { ; X32-CLZ-NEXT: movzbl %al, %eax ; X32-CLZ-NEXT: lzcntl %eax, %eax ; X32-CLZ-NEXT: addl $-24, %eax -; X32-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X32-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X32-CLZ-NEXT: retl ; ; X64-CLZ-LABEL: ctlz_i8_knownbits: @@ -855,7 +855,7 @@ define i8 @ctlz_i8_knownbits(i8 %x) { ; X64-CLZ-NEXT: movzbl %dil, %eax ; X64-CLZ-NEXT: lzcntl %eax, %eax ; X64-CLZ-NEXT: addl $-24, %eax -; X64-CLZ-NEXT: # kill: %al<def> %al<kill> %eax<kill> +; X64-CLZ-NEXT: # kill: def %al killed %al killed %eax ; X64-CLZ-NEXT: retq %x2 = or i8 %x, 64 |