From 2889780436ebc7feccb81aa11117e8a0a4de42ed Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Wed, 12 Nov 2008 12:31:28 +0000 Subject: [PATCH] Start a README.txt of possible optimizations to do in IRgen. llvm-svn: 59130 --- clang/lib/CodeGen/README.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 clang/lib/CodeGen/README.txt diff --git a/clang/lib/CodeGen/README.txt b/clang/lib/CodeGen/README.txt new file mode 100644 index 000000000000..33fbfdb744ad --- /dev/null +++ b/clang/lib/CodeGen/README.txt @@ -0,0 +1,24 @@ +IRgen optimization opportunities. + +//===---------------------------------------------------------------------===// + +The common pattern of +-- +short x; // or char, etc +(x == 10) +-- +generates an zext/sext of x which can easily be avoided. + +//===---------------------------------------------------------------------===// + +Bitfields accesses can be shifted to simplify masking and sign +extension. For example, if the bitfield width is 8 and it is +appropriately aligned then is is a lot shorter to just load the char +directly. + +//===---------------------------------------------------------------------===// + +Bitfields should not reload the stored value just to return the +correct result. + +//===---------------------------------------------------------------------===//