1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/lib
Benjamin Kramer f00a49ceff instcombine: fold (x & y) | (~x & z) and (x & y) ^ (~x & z) into ((y ^ z) & x) ^ z which is one instruction shorter. (PR6773)
before:
  %and = and i32 %y, %x
  %neg = xor i32 %x, -1
  %and4 = and i32 %z, %neg
  %xor = xor i32 %and4, %and

after:
  %xor1 = xor i32 %z, %y
  %and2 = and i32 %xor1, %x
  %xor = xor i32 %and2, %z

llvm-svn: 108136
2010-07-12 11:54:45 +00:00
..
Analysis Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
Archive Eliminate some unnessary Path::exists() calls. 2010-05-27 20:51:54 +00:00
AsmParser Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
Bitcode cache result of operator* 2010-07-09 16:01:21 +00:00
CodeGen Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
CompilerDriver 80-col violation. 2010-07-01 01:00:27 +00:00
ExecutionEngine Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
Linker Revert r107205 and r107207. 2010-06-29 22:34:52 +00:00
MC Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
Support add some triple for minix, patch by Kees van Reeuwijk from PR7582 2010-07-07 15:52:27 +00:00
System Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
Target Convert some tab stops into spaces. 2010-07-12 08:16:59 +00:00
Transforms instcombine: fold (x & y) | (~x & z) and (x & y) ^ (~x & z) into ((y ^ z) & x) ^ z which is one instruction shorter. (PR6773) 2010-07-12 11:54:45 +00:00
VMCore cache dereferenced iterators 2010-07-12 10:36:48 +00:00
Makefile