2002-05-03 19:58:17 +00:00
|
|
|
; This bug has to do with the fact that constant propogation was implemented in
|
|
|
|
; terms of _logical_ not (! in C) instead of _bitwise_ not (~ in C). This was
|
|
|
|
; due to a spec change.
|
|
|
|
|
2002-08-14 19:28:09 +00:00
|
|
|
; Fix #2: The unary not instruction now no longer exists. Change to xor.
|
|
|
|
|
2007-04-14 23:04:54 +00:00
|
|
|
; RUN: llvm-upgrade < $test | llvm-as | opt -constprop | llvm-dis | \
|
|
|
|
; RUN: not grep {int 0}
|
2002-05-03 19:58:17 +00:00
|
|
|
|
|
|
|
int "test1"() {
|
2002-08-14 19:28:09 +00:00
|
|
|
%R = xor int 123, -1
|
2002-05-03 19:58:17 +00:00
|
|
|
ret int %R
|
|
|
|
}
|
|
|
|
|
|
|
|
int "test2"() {
|
2002-08-14 19:28:09 +00:00
|
|
|
%R = xor int -123, -1
|
2002-05-03 19:58:17 +00:00
|
|
|
ret int %R
|
|
|
|
}
|