diff options
author | Chris Lattner <sabre@nondot.org> | 2006-09-20 06:32:10 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-09-20 06:32:10 +0000 |
commit | 7e932de7f52dbb8d876f3301aff318e3b9651492 (patch) | |
tree | d354150470ace1e9ad500b86d72106d68e1b220f | |
parent | 84750587bf859a048580f7f13b1b2710d0b681fb (diff) |
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30515 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/README.txt | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt index dd02948f87..d2aaa592e6 100644 --- a/lib/Target/X86/README.txt +++ b/lib/Target/X86/README.txt @@ -734,3 +734,19 @@ This currently compiles to: addl $12, %esp The add\sub pair is really unneeded here. + +//===---------------------------------------------------------------------===// + +We generate really bad code in some cases due to lowering SETCC/SELECT at +legalize time, which prevents the post-legalize dag combine pass from +understanding the code. As a silly example, this prevents us from folding +stuff like this: + +bool %test(ulong %x) { + %tmp = setlt ulong %x, 4294967296 + ret bool %tmp +} + +into x.h == 0 + + |