+2011-08-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/47381
+ * gcc.dg/pr47381-1.c: New.
+ * gcc.dg/pr47381-2.c: Likewise.
+ * gcc.target/i386/pr47381.c: Likewise.
+
2011-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47727
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef unsigned IPos;
+typedef unsigned char uch;
+extern uch window[];
+unsigned max_chain_length;
+unsigned strstart;
+int longest_match(IPos cur_match, int len, int best_len)
+{
+ unsigned chain_length = max_chain_length;
+ register uch *scan = window + strstart;
+ register uch *match;
+ register uch scan_end1 = scan[best_len-1];
+ register uch scan_end = scan[best_len];
+ do {
+ ;
+ match = window + cur_match;
+ if (match[best_len] != scan_end ||
+ match[best_len-1] != scan_end1 ||
+ *match != *scan ||
+ *++match != scan[1]) continue;
+ best_len = len;
+ } while ( --chain_length != 0);
+ return best_len;
+}
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef unsigned long ulg;
+long block_start;
+typedef unsigned char uch;
+extern uch window[];
+ unsigned strstart;
+ulg flush_block (char *buf, ulg stored_len, int eof);
+ulg deflate()
+{
+ return flush_block(block_start >= 0L ? (char*)&window[(unsigned)block_start] : (char*)((void *)0), (long)strstart - block_start, (1));
+}
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O2 -march=atom" } */
+
+struct foo_t {
+ int limit;
+} foo[3];
+void
+bar () {
+ int i;
+ for (i = 0; i < 3; i++) {
+ __builtin_memset (&foo[i], 0, sizeof(*foo));
+ }
+}