[Bug gas/30292] New: Unbounded recursion/infinite loop in eqv expansion

2023-03-30 Thread charlechaud at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30292

Bug ID: 30292
   Summary: Unbounded recursion/infinite loop in eqv expansion
   Product: binutils
   Version: 2.39
Status: UNCONFIRMED
  Severity: critical
  Priority: P2
 Component: gas
  Assignee: unassigned at sourceware dot org
  Reporter: charlechaud at gmail dot com
  Target Milestone: ---

Created attachment 14791
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14791&action=edit
One of 5 files triggering the infinite loop (run out of gcc or do gcc -E
first).

gas from binutils-2.38 works fine and produces correct object code.  While
introduced in 2.39, this bug persists in 2.40.

There is an infinite loop of i386_intel_simplify_symbol mutually recursing with
i386_intel_simplify in all x64 .S files except the "shani" one in this repo:

https://github.com/prysmaticlabs/hashtree

For example:

https://github.com/prysmaticlabs/hashtree/blob/main/src/sha256_avx_x4.S

To be complete/autonomous, I have attached this file, but the other 5 fail in a
very similar way if that helps.  (Note that it needs pre-processing first.)

Setting a breakpoint at those symbols with a debugging enabled build, it seems
like expanding the symbol `e` in translating a "vpslld TMP,e" instruction (in
thatsha256_avx_x4.S file, anyway - the instruction triggering the looping
recursion varies).

The `e` symbol in question is part of some `eqv` s near the start of the file.

I have not really tried to minimize this to the smallest reproducing bug, but
the consistency of failure does suggest such minimizing might be
straightforward.

There was a somewhat substantial patch to this file between 2.38 and 2.39 that
may be the origin of the problem.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/30308] as crash (infinite recursion) on invalid source file

2023-04-12 Thread charlechaud at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30308

Charles Blake  changed:

   What|Removed |Added

 CC||charlechaud at gmail dot com

--- Comment #2 from Charles Blake  ---
I was also able to reproduce the infinite recursion against mainline sources.

-- 
You are receiving this mail because:
You are on the CC list for the bug.