public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed
@ 2012-10-27  0:16 hjl.tools at gmail dot com
  2012-10-27  0:17 ` [Bug rtl-optimization/55093] " hjl.tools at gmail dot com
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-27  0:16 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

             Bug #: 55093
           Summary: [4.8 Regression] [x32] -maddress-mode=long failed
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: hjl.tools@gmail.com
                CC: ubizjak@gmail.com, vmakarov@redhat.com


LRA caused -maddress-mode=long to fail:

[hjl@gnu-tools-1 gcc]$ ../prev-gcc/xgcc -B../prev-gcc/ -mx32 -O2 -S /tmp/x.ii
-maddress-mode=long
/tmp/x.ii: In function ‘bool set_lattice_value(tree, prop_value_t)’:
/tmp/x.ii:25385:1: internal compiler error: in print_reg, at
config/i386/i386.c:14088
 }
 ^
0xf4fbdd print_reg(rtx_def*, int, _IO_FILE*)
    /export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c:14083
0xf51f63 ix86_print_operand_address
    /export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c:15046
0x976edd output_address(rtx_def*)
    /export/gnu/import/git/gcc-misc/gcc/final.c:3709
0xf503ad ix86_print_operand(_IO_FILE*, rtx_def*, int)
    /export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c:14317
0x976e6f output_operand(rtx_def*, int)
    /export/gnu/import/git/gcc-misc/gcc/final.c:3693
0x976a02 output_asm_insn(char const*, rtx_def**)
    /export/gnu/import/git/gcc-misc/gcc/final.c:3572
0x975678 final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*)
    /export/gnu/import/git/gcc-misc/gcc/final.c:2890
0x973b53 final(rtx_def*, _IO_FILE*, int)
    /export/gnu/import/git/gcc-misc/gcc/final.c:1919
0x9782c7 rest_of_handle_final
    /export/gnu/import/git/gcc-misc/gcc/final.c:4321
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
[hjl@gnu-tools-1 gcc]$


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
@ 2012-10-27  0:17 ` hjl.tools at gmail dot com
  2012-10-27  0:19 ` hjl.tools at gmail dot com
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-27  0:17 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-27 00:16:52 UTC ---
Created attachment 28541
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28541
A testcase


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
  2012-10-27  0:17 ` [Bug rtl-optimization/55093] " hjl.tools at gmail dot com
@ 2012-10-27  0:19 ` hjl.tools at gmail dot com
  2012-10-28  3:22 ` hjl.tools at gmail dot com
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-27  0:19 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-27 00:19:22 UTC ---
Another zero-extend bug?

Breakpoint 1, fancy_abort (
    file=0x146ea68 "/export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c", 
    line=14088, 
    function=0x14879e3 <print_reg(rtx_def*, int, _IO_FILE*)::__FUNCTION__>
"print_reg") at /export/gnu/import/git/gcc-misc/gcc/diagnostic.c:1143
1143      internal_error ("in %s, at %s:%d", function, trim_filename (file),
line);
(gdb) f 1
#1  0x00f4fbde in print_reg (x=0xf5131168, code=113, file=0x1a13da0)
    at /export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c:14083
14083      gcc_assert (x == pc_rtx
(gdb) call debug_rtx (x)
(reg:SI 16 argp)
(gdb) f 2
#2  0x00f51f64 in ix86_print_operand_address (file=0x1a13da0, addr=0xf5138bd0)
    at /export/gnu/import/git/gcc-misc/gcc/config/i386/i386.c:15046
15046            print_reg (base, code, file);
(gdb) call debug_rtx (addr)
(unspec:DI [
        (zero_extend:DI (plus:SI (reg:SI 16 argp)
                (const_int 68 [0x44])))
    ] UNSPEC_LEA_ADDR)
(gdb)


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
  2012-10-27  0:17 ` [Bug rtl-optimization/55093] " hjl.tools at gmail dot com
  2012-10-27  0:19 ` hjl.tools at gmail dot com
@ 2012-10-28  3:22 ` hjl.tools at gmail dot com
  2012-10-29  0:11 ` hjl.tools at gmail dot com
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-28  3:22 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-28 03:22:31 UTC ---
A small testcase:

[hjl@gnu-tools-1 pr55093]$ cat x.ii 
__extension__ typedef struct {
}
_G_fpos_t;
typedef unsigned int hashval_t;
typedef union tree_node *tree;
typedef union gimple_statement_d *gimple;
typedef const union tree_node *const_tree;
typedef struct edge_def *edge;
enum machine_mode { VOIDmode,        };
struct double_int {
    unsigned long long low;
    long long high;
};
struct real_value {
};
struct real_format {
    bool has_signed_zero;
};
extern const struct real_format *   real_format_for_mode[1];
extern bool real_isnegzero (const struct real_value *);
enum tree_code { REAL_CST, SSA_NAME };
struct tree_base {
    enum tree_code code : 16;
    union {
        unsigned int version;
    }
    u;
};
extern void tree_check_failed (const_tree, const char *, int, const char *,    
      ...) __attribute__ ((__noreturn__));
typedef struct ssa_use_operand_d {
    union {
    }
    loc;
}
ssa_use_operand_t;
union                                                          tree_node {
    struct tree_base base;
};
inline tree tree_check (tree __t, const char *__f, int __l, const char *__g,
tree_code __c) {
    if (((enum tree_code) (__t)->base.code) != __c)     tree_check_failed (__t,
__f, __l, __g, __c, 0);
    union basic_block_il_dependent {
    }
    il;
}
typedef enum {
}
gimple_stmt_iterator;
enum ssa_prop_result {
    SSA_PROP_NOT_INTERESTING,     SSA_PROP_INTERESTING,     SSA_PROP_VARYING };
typedef enum ssa_prop_result (*ssa_prop_visit_stmt_fn) (gimple, edge *, tree
*);
typedef enum ssa_prop_result (*ssa_prop_visit_phi_fn) (gimple);
typedef bool (*ssa_prop_fold_stmt_fn) (gimple_stmt_iterator *gsi);
typedef tree (*ssa_prop_get_value_fn) (tree);
void ssa_propagate (ssa_prop_visit_stmt_fn, ssa_prop_visit_phi_fn);
bool substitute_and_fold (ssa_prop_get_value_fn, ssa_prop_fold_stmt_fn, bool);
typedef enum {
    UNINITIALIZED,   UNDEFINED,   CONSTANT,   VARYING }
    ccp_lattice_t;
    struct prop_value_d {
        ccp_lattice_t lattice_val;
        tree value;
        double_int mask;
    };
typedef struct prop_value_d prop_value_t;
static prop_value_t *const_val;
static void canonicalize_float_value (prop_value_t *);
static bool ccp_fold_stmt (gimple_stmt_iterator *);
static inline prop_value_t * get_value (tree var) {
    prop_value_t *val;
    canonicalize_float_value (val);
}
static inline tree get_constant_value (tree var) {
    prop_value_t *val;
    val = get_value (var);
}
static void canonicalize_float_value (prop_value_t *val) {
    enum machine_mode mode;
    struct real_value d;
    if (val->lattice_val != CONSTANT      || ((enum tree_code)
(val->value)->base.code) != REAL_CST)      return;
    if (!(((real_format_for_mode[ mode      ])->has_signed_zero))      &&
real_isnegzero (&d)      )     {
    }
}
static bool set_lattice_value (tree var, prop_value_t new_val) {
    prop_value_t *old_val = &const_val[(tree_check ((var), "",
    0, __FUNCTION__, (SSA_NAME)))->base.u.version];
    canonicalize_float_value (&new_val);
}
static enum ssa_prop_result ccp_visit_phi_node (gimple phi) {
    prop_value_t new_val;
    if (set_lattice_value (0, new_val))     {
    }
}
static enum ssa_prop_result ccp_visit_stmt (gimple stmt, edge *taken_edge_p,
tree *output_p) {
    tree def;
    prop_value_t v = {
    };
    set_lattice_value (def, v);
}
unsigned int do_ssa_ccp (void) {
    ssa_propagate (ccp_visit_stmt, ccp_visit_phi_node);
    substitute_and_fold (get_constant_value, ccp_fold_stmt, true);
}
[hjl@gnu-tools-1 pr55093]$ make
/usr/gcc-4.8.0-x32/bin/gcc -O2 -mx32 -maddress-mode=long -S x.ii
x.ii: In function ‘bool set_lattice_value(tree, prop_value_t)’:
x.ii:87:1: internal compiler error: in print_reg, at config/i386/i386.c:14088
 }
 ^
0xcb3e48 print_reg(rtx_def*, int, _IO_FILE*)
    /export/gnu/import/git/gcc/gcc/config/i386/i386.c:14083
0xcb4185 ix86_print_operand_address
    /export/gnu/import/git/gcc/gcc/config/i386/i386.c:15046
0x8799ee output_address(rtx_def*)
    /export/gnu/import/git/gcc/gcc/final.c:3709
0xcba9cf ix86_print_operand(_IO_FILE*, rtx_def*, int)
    /export/gnu/import/git/gcc/gcc/config/i386/i386.c:14825
0x87994e output_operand(rtx_def*, int)
    /export/gnu/import/git/gcc/gcc/final.c:3693
0x87a284 output_asm_insn(char const*, rtx_def**)
    /export/gnu/import/git/gcc/gcc/final.c:3572
0x87b8fa final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*)
    /export/gnu/import/git/gcc/gcc/final.c:2890
0x87c085 final(rtx_def*, _IO_FILE*, int)
    /export/gnu/import/git/gcc/gcc/final.c:1919
0x87c469 rest_of_handle_final
    /export/gnu/import/git/gcc/gcc/final.c:4321
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [x.s] Error 1
[hjl@gnu-tools-1 pr55093]$


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (2 preceding siblings ...)
  2012-10-28  3:22 ` hjl.tools at gmail dot com
@ 2012-10-29  0:11 ` hjl.tools at gmail dot com
  2012-10-29  0:41 ` hjl.tools at gmail dot com
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-29  0:11 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #28541|0                           |1
        is obsolete|                            |

--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-29 00:10:37 UTC ---
Created attachment 28552
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28552
A smaller testcase

LRA failed to handle

(insn 34 32 35 4 (parallel [
            (set (reg:SI 79)
                (plus:SI (subreg:SI (reg/f:DI 16 argp) 0)
                    (const_int 4 [0x4])))
            (clobber (reg:CC 17 flags))
        ]) x.ii:63 247 {*addsi_1}
     (expr_list:REG_UNUSED (reg:CC 17 flags)
        (expr_list:REG_EQUIV (plus:SI (subreg:SI (reg/f:DI 16 argp) 0)
                (const_int 4 [0x4]))
            (nil))))

The old reload eliminates argp:

(insn 34 49 35 4 (parallel [
            (set (reg:SI 4 si [79])
                (plus:SI (reg:SI 4 si [79])
                    (const_int 20 [0x14])))
            (clobber (reg:CC 17 flags))
        ]) x.ii:63 247 {*addsi_1}
     (expr_list:REG_EQUIV (plus:SI (subreg:SI (plus:DI (reg/f:DI 7 sp) 
                    (const_int 16 [0x10])) 0)
            (const_int 4 [0x4]))
        (nil)))

while LRA keeps:

(insn 34 32 35 4 (parallel [
            (set (reg:SI 4 si [79])
                (plus:SI (reg:SI 16 argp)
                    (const_int 20 [0x14])))
            (clobber (reg:CC 17 flags))
        ]) x.ii:63 247 {*addsi_1}
     (expr_list:REG_UNUSED (reg:CC 17 flags)
        (expr_list:REG_EQUIV (plus:SI (subreg:SI (reg/f:DI 16 argp) 0)
                (const_int 4 [0x4]))
            (nil))))


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (3 preceding siblings ...)
  2012-10-29  0:11 ` hjl.tools at gmail dot com
@ 2012-10-29  0:41 ` hjl.tools at gmail dot com
  2012-10-29  0:45 ` hjl.tools at gmail dot com
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-29  0:41 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-29 00:41:19 UTC ---
This patch:


diff --git a/gcc/lra-eliminations.c b/gcc/lra-eliminations.c
index 2222d80..681c609 100644
--- a/gcc/lra-eliminations.c
+++ b/gcc/lra-eliminations.c
@@ -272,7 +272,7 @@ get_elimination (rtx reg)
   if ((hard_regno = REGNO (reg)) < 0 || hard_regno >= FIRST_PSEUDO_REGISTER)
     return NULL;
   if ((ep = elimination_map[hard_regno]) != NULL)
-    return ep->from_rtx != reg ? NULL : ep;
+    return ep->from_rtx != reg && ep->from != hard_regno ? NULL : ep;
   if ((offset = self_elim_offsets[hard_regno]) == 0)
     return NULL;
   /* This is an iteration to restore offsets just after HARD_REGNO

fixes the IC.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (4 preceding siblings ...)
  2012-10-29  0:41 ` hjl.tools at gmail dot com
@ 2012-10-29  0:45 ` hjl.tools at gmail dot com
  2012-10-29  2:32 ` hjl.tools at gmail dot com
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-29  0:45 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.8.0

--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-29 00:44:53 UTC ---
I am testing this patch:

diff --git a/gcc/lra-eliminations.c b/gcc/lra-eliminations.c
index 2222d80..cbfbe7a 100644
--- a/gcc/lra-eliminations.c
+++ b/gcc/lra-eliminations.c
@@ -272,7 +272,7 @@ get_elimination (rtx reg)
   if ((hard_regno = REGNO (reg)) < 0 || hard_regno >= FIRST_PSEUDO_REGISTER)
     return NULL;
   if ((ep = elimination_map[hard_regno]) != NULL)
-    return ep->from_rtx != reg ? NULL : ep;
+    return ep->from != hard_regno ? NULL : ep;
   if ((offset = self_elim_offsets[hard_regno]) == 0)
     return NULL;
   /* This is an iteration to restore offsets just after HARD_REGNO


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (5 preceding siblings ...)
  2012-10-29  0:45 ` hjl.tools at gmail dot com
@ 2012-10-29  2:32 ` hjl.tools at gmail dot com
  2012-10-30 22:57 ` hjl at gcc dot gnu.org
  2012-10-31  1:35 ` hjl.tools at gmail dot com
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-29  2:32 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #7 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-29 02:31:44 UTC ---
(In reply to comment #6)
> I am testing this patch:
> 
> diff --git a/gcc/lra-eliminations.c b/gcc/lra-eliminations.c
> index 2222d80..cbfbe7a 100644
> --- a/gcc/lra-eliminations.c
> +++ b/gcc/lra-eliminations.c
> @@ -272,7 +272,7 @@ get_elimination (rtx reg)
>    if ((hard_regno = REGNO (reg)) < 0 || hard_regno >= FIRST_PSEUDO_REGISTER)
>      return NULL;
>    if ((ep = elimination_map[hard_regno]) != NULL)
> -    return ep->from_rtx != reg ? NULL : ep;
> +    return ep->from != hard_regno ? NULL : ep;
>    if ((offset = self_elim_offsets[hard_regno]) == 0)
>      return NULL;
>    /* This is an iteration to restore offsets just after HARD_REGNO

It doesn't solve all problems. I got

Starting program:
/export/build/gnu/gcc-x32-mx32-native-long/build-x86_64-linux/gcc/cc1
-fpreprocessed /tmp/bad.i -march=corei7-avx -mcx16 -msahf -mno-movbe -maes
-mpclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi
-mno-bmi2 -mno-tbm -mavx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rtm
-mno-hle -mrdrnd -mf16c -mfsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr
-mxsave -mxsaveopt --param l1-cache-size=32 --param l1-cache-line-size=64
--param l2-cache-size=8192 -mtune=generic -quiet -dumpbase bad.i -msse2 -mx32
-auxbase-strip O3-pr41881.s -O2 -O3 -version -fno-diagnostics-show-caret
-ftree-vectorize -fno-vect-cost-model -fno-common -fdump-tree-vect-details
-fno-ipa-cp-clone -o O3-pr41881.s
GNU C (GCC) version 4.8.0 20121029 (experimental) (x86_64-unknown-linux-gnu)
    compiled by GNU C version 4.8.0 20121029 (experimental), GMP version 5.0.2,
MPFR version 3.1.0, MPC version 0.9
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU C (GCC) version 4.8.0 20121029 (experimental) (x86_64-unknown-linux-gnu)
    compiled by GNU C version 4.8.0 20121029 (experimental), GMP version 5.0.2,
MPFR version 3.1.0, MPC version 0.9
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 8b8bc795ba054ad7d30608d02345517d

Program received signal SIGSEGV, Segmentation fault.
0x0073eddb in dump_gimple_bb_header (outf=outf@entry=0x136dab0, 
    bb=bb@entry=0xf6943380, indent=indent@entry=0, flags=flags@entry=469762568)
    at /export/gnu/import/git/gcc-misc/gcc/gimple-pretty-print.c:2097
2097          memset (s_indent, ' ', (size_t) indent);
(gdb) p/x $rsp
$6 = 0xffffffffffffc8b0
(gdb) 

When -maddress-mode=long is used to compile x32 GCC, Pmode
is DImode and ptr_mode is SImode.  LRA fails to properly handle
ptr_mode != Pmode:

   0x0073edb6 <+278>:    lea    -0x1(%rbx),%eax
   0x0073edb9 <+281>:    mov    %ebx,%edx
   0x0073edbb <+283>:    mov    $0x20,%esi
   0x0073edc0 <+288>:    add    $0x2e,%rax
   0x0073edc4 <+292>:    shr    $0x4,%rax
   0x0073edc8 <+296>:    shl    $0x4,%rax
   0x0073edcc <+300>:    sub    %rax,%rsp
   0x0073edcf <+303>:    lea    0x1f(%rsp),%r8
   0x0073edd4 <+308>:    and    $0xffffffe0,%r8d
   0x0073edd8 <+312>:    mov    %r8,%rdi
=> 0x0073eddb <+315>:    callq  0x4a5970 <memset@plt>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (6 preceding siblings ...)
  2012-10-29  2:32 ` hjl.tools at gmail dot com
@ 2012-10-30 22:57 ` hjl at gcc dot gnu.org
  2012-10-31  1:35 ` hjl.tools at gmail dot com
  8 siblings, 0 replies; 10+ messages in thread
From: hjl at gcc dot gnu.org @ 2012-10-30 22:57 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

--- Comment #8 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> 2012-10-30 22:56:59 UTC ---
Author: hjl
Date: Tue Oct 30 22:56:52 2012
New Revision: 193000

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=193000
Log:
Remove lra_in_progress check for ARG_POINTER_REGNUM

gcc/

    PR rtl-optimization/55093
    * rtlanal.c (simplify_subreg_regno): Remove lra_in_progress
    check for ARG_POINTER_REGNUM.

gcc/testsuite/

    PR rtl-optimization/55093
    * gcc.target/i386/pr55093.c: New file.

Added:
    trunk/gcc/testsuite/gcc.target/i386/pr55093.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/rtlanal.c
    trunk/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug rtl-optimization/55093] [4.8 Regression] [x32] -maddress-mode=long failed
  2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
                   ` (7 preceding siblings ...)
  2012-10-30 22:57 ` hjl at gcc dot gnu.org
@ 2012-10-31  1:35 ` hjl.tools at gmail dot com
  8 siblings, 0 replies; 10+ messages in thread
From: hjl.tools at gmail dot com @ 2012-10-31  1:35 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55093

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED

--- Comment #9 from H.J. Lu <hjl.tools at gmail dot com> 2012-10-31 01:33:37 UTC ---
Fixed.


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-10-31  1:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-27  0:16 [Bug rtl-optimization/55093] New: [4.8 Regression] [x32] -maddress-mode=long failed hjl.tools at gmail dot com
2012-10-27  0:17 ` [Bug rtl-optimization/55093] " hjl.tools at gmail dot com
2012-10-27  0:19 ` hjl.tools at gmail dot com
2012-10-28  3:22 ` hjl.tools at gmail dot com
2012-10-29  0:11 ` hjl.tools at gmail dot com
2012-10-29  0:41 ` hjl.tools at gmail dot com
2012-10-29  0:45 ` hjl.tools at gmail dot com
2012-10-29  2:32 ` hjl.tools at gmail dot com
2012-10-30 22:57 ` hjl at gcc dot gnu.org
2012-10-31  1:35 ` hjl.tools at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).