mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-30 02:32:08 +00:00
e4d87aa2de
This patch removes the SetCC instructions and replaces them with the ICmp and FCmp instructions. The SetCondInst instruction has been removed and been replaced with ICmpInst and FCmpInst. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32751 91177308-0d34-0410-b5e6-96231b3b80d8
27 lines
564 B
LLVM
27 lines
564 B
LLVM
; RUN: llvm-upgrade < %s | llvm-as | opt -simplifycfg | llvm-dis | not grep 'icmp eq'
|
|
|
|
; Check that simplifycfg deletes a dead 'seteq' instruction when it
|
|
; folds a conditional branch into a switch instruction.
|
|
|
|
declare void %foo()
|
|
declare void %bar()
|
|
|
|
void %testcfg(uint %V) {
|
|
%C = seteq uint %V, 18
|
|
%D = seteq uint %V, 180
|
|
%E = or bool %C, %D
|
|
br bool %E, label %L1, label %Sw
|
|
Sw:
|
|
switch uint %V, label %L1 [
|
|
uint 15, label %L2
|
|
uint 16, label %L2
|
|
]
|
|
L1:
|
|
call void %foo()
|
|
ret void
|
|
L2:
|
|
call void %bar()
|
|
ret void
|
|
}
|
|
|