diff options
author | Chris Lattner <sabre@nondot.org> | 2011-03-01 00:24:51 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2011-03-01 00:24:51 +0000 |
commit | 0c6cb46ac107565b8db848b071071559f0d6688f (patch) | |
tree | a81bb299d25e1349c93b3ac6fe2a5011d1a5d815 /llvm | |
parent | 2e72da947c48005ed14ca78f61f7a43abf4c58e9 (diff) | |
download | bcm5719-llvm-0c6cb46ac107565b8db848b071071559f0d6688f.tar.gz bcm5719-llvm-0c6cb46ac107565b8db848b071071559f0d6688f.zip |
add a note
llvm-svn: 126719
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/lib/Target/README.txt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/Target/README.txt b/llvm/lib/Target/README.txt index e01df010436..45da3ddb607 100644 --- a/llvm/lib/Target/README.txt +++ b/llvm/lib/Target/README.txt @@ -1325,6 +1325,21 @@ codegen. //===---------------------------------------------------------------------===// +simplifylibcalls should turn these snprintf idioms into memcpy (GCC PR47917) + +char buf1[6], buf2[6], buf3[4], buf4[4]; +int i; + +int foo (void) { + int ret = snprintf (buf1, sizeof buf1, "abcde"); + ret += snprintf (buf2, sizeof buf2, "abcdef") * 16; + ret += snprintf (buf3, sizeof buf3, "%s", i++ < 6 ? "abc" : "def") * 256; + ret += snprintf (buf4, sizeof buf4, "%s", i++ > 10 ? "abcde" : "defgh")*4096; + return ret; +} + +//===---------------------------------------------------------------------===// + "gas" uses this idiom: else if (strchr ("+-/*%|&^:[]()~", *intel_parser.op_string)) .. |