Opened 7 years ago

Closed 7 years ago

#2181 closed bug (invalid)

internal error: END_TSO_QUEUE object entered!

Reported by: cconnett Owned by:
Priority: normal Milestone: 6.8.3
Component: Compiler Version: 6.8.2
Keywords: Cc:
Operating System: Solaris Architecture: sparc
Type of failure: Test Case:
Blocked By: Blocking:
Related Tickets: Differential Revisions:

Description

internal error: END_TSO_QUEUE object entered!

(GHC version 6.8.2 for sparc_sun_solaris2)

This error occurs if I pass -optc-O2 or greater. At -optc-O1 it does not occur.

Attachments (1)

code.tar.bz2 (138.5 KB) - added by cconnett 7 years ago.
Code that exhibits this bug (added missing data file).

Download all attachments as: .zip

Change History (6)

comment:1 Changed 7 years ago by igloo

  • difficulty set to Unknown
  • Milestone set to 6.8.3

Thanks for the report; however, without a test case this is virtually impossible to fix, or to confirm that we have fixed the bug that you are seeing. Can you please attach some code that triggers the problem to this ticket, and say exactly what commands you are running?

comment:2 Changed 7 years ago by cconnett

I've attached a tarball of my project source. I'd narrow it down if I knew how to with haskell tools. make in the project directory should build the executable Solve.

Run:
./Solve bf irv u-3-15

Changing -optc-O3 to -optc-O1 in the Makefile causes the bug not to occur.

Let me know if I can assist in simplifying the code.

Changed 7 years ago by cconnett

Code that exhibits this bug (added missing data file).

comment:3 Changed 7 years ago by igloo

Can you send the output of ghc --info please?

If it's a registerised compiler then we don't support changing the optimisations that gcc does, as the assembly mangling we do may get confused.

On the other hand, if it's unregisterised then it points to a bug either in gcc or the code that we generate.

comment:4 Changed 7 years ago by cconnett

[("Project name","The Glorious Glasgow Haskell Compilation System")
,("Project version","6.8.2")
,("Booter version","6.8.1")
,("Stage","2")
,("Interface file version","6")
,("Have interpreter","YES")
,("Object splitting","YES")
,("Have native code generator","NO")
,("Support SMP","YES")
,("Unregisterised","NO")
,("Tables next to code","YES")
,("Win32 DLLs","")
,("RTS ways"," debug thr thr_p thr_debug")
,("Leading underscore","NO")
]

comment:5 Changed 7 years ago by igloo

  • Resolution set to invalid
  • Status changed from new to closed

OK, so that says that it's not unregisterised, and therefore using -optc-O3 isn't supported. If you stick with passing just -O of -O2 to GHC then it should work.

Note: See TracTickets for help on using tickets.