Ticket #18 (closed bug: Fixed)

Opened 12 years ago

Last modified 43 years ago

panic: getRegister(x86,unary primop)

Reported by: nobody Owned by: nobody
Priority: normal Milestone:
Component: Compiler Version: 5.02
Keywords: Cc:
Operating System: Architecture:
Type of failure: Difficulty:
Test Case: Blocked By:
Blocking: Related Tickets:

Description

Machine: Linux nebula 2.4.9-686 #1 Sun Aug 19 10:46:52
EST 2001 i686 unknown

gcc version (irrelevant, but): gcc version 2.95.4
20011006 (Debian prerelease)

Broken compiler run: 
cwitty(cwitty)@nebula ~/prcs/poly> ghc -v -syslib lang
-O -fasm -c Bug.hs
Glasgow Haskell Compiler, Version 5.02, for Haskell 98,
compiled by GHC version 5.02
Using package config file: /usr/lib/ghc-5.02/package.conf

==================== Packages ====================
Package
   {name = "gmp",
    import_dirs = [],
    source_dirs = [],
    library_dirs = [],
    hs_libraries = [],
    extra_libraries = ["gmp"],
    include_dirs = [],
    c_includes = [],
    package_deps = [],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "rts",
    import_dirs = [],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSrts"],
    extra_libraries = ["m"],
    include_dirs = ["/usr/lib/ghc-5.02/include"],
    c_includes = ["Stg.h"],
    package_deps = ["gmp"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts =
      ["-u",
       "PrelBase_Izh_static_info",
       "-u",
       "PrelBase_Czh_static_info",
       "-u",
       "PrelFloat_Fzh_static_info",
       "-u",
       "PrelFloat_Dzh_static_info",
       "-u",
       "PrelPtr_Ptr_static_info",
       "-u",
       "PrelWord_Wzh_static_info",
       "-u",
       "PrelInt_I8zh_static_info",
       "-u",
       "PrelInt_I16zh_static_info",
       "-u",
       "PrelInt_I32zh_static_info",
       "-u",
       "PrelInt_I64zh_static_info",
       "-u",
       "PrelWord_W8zh_static_info",
       "-u",
       "PrelWord_W16zh_static_info",
       "-u",
       "PrelWord_W32zh_static_info",
       "-u",
       "PrelWord_W64zh_static_info",
       "-u",
       "PrelStable_StablePtr_static_info",
       "-u",
       "PrelBase_Izh_con_info",
       "-u",
       "PrelBase_Czh_con_info",
       "-u",
       "PrelFloat_Fzh_con_info",
       "-u",
       "PrelFloat_Dzh_con_info",
       "-u",
       "PrelPtr_Ptr_con_info",
       "-u",
       "PrelStable_StablePtr_con_info",
       "-u",
       "PrelBase_False_closure",
       "-u",
       "PrelBase_True_closure",
       "-u",
       "PrelPack_unpackCString_closure",
       "-u",
       "PrelIOBase_stackOverflow_closure",
       "-u",
       "PrelIOBase_heapOverflow_closure",
       "-u",
       "PrelIOBase_NonTermination_closure",
       "-u",
       "PrelIOBase_BlockedOnDeadMVar_closure",
       "-u",
       "PrelWeak_runFinalizzerBatch_closure",
       "-u",
       "__stginit_Prelude"]}
Package
   {name = "std",
    import_dirs = ["/usr/lib/ghc-5.02/imports/std"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSstd"],
    extra_libraries = ["HSstd_cbits"],
    include_dirs = [],
    c_includes = ["HsStd.h"],
    package_deps = ["rts"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "lang",
    import_dirs = ["/usr/lib/ghc-5.02/imports/lang"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSlang"],
    extra_libraries = ["HSlang_cbits"],
    include_dirs = [],
    c_includes = ["HsLang.h"],
    package_deps = [],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = ["-u", "Addr_Azh_static_info"]}
Package
   {name = "concurrent",
    import_dirs = ["/usr/lib/ghc-5.02/imports/concurrent"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSconcurrent"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "data",
    import_dirs = ["/usr/lib/ghc-5.02/imports/data"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSdata"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["lang", "util"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "net",
    import_dirs = ["/usr/lib/ghc-5.02/imports/net"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSnet"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = ["HsNet.h"],
    package_deps = ["lang", "text", "concurrent"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "posix",
    import_dirs = ["/usr/lib/ghc-5.02/imports/posix"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSposix"],
    extra_libraries = ["HSposix_cbits"],
    include_dirs = [],
    c_includes = ["HsPosix.h"],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "text",
    import_dirs = ["/usr/lib/ghc-5.02/imports/text"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HStext"],
    extra_libraries = ["HStext_cbits"],
    include_dirs = [],
    c_includes = ["HsText.h"],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "util",
    import_dirs = ["/usr/lib/ghc-5.02/imports/util"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSutil"],
    extra_libraries = ["HSutil_cbits", "readline",
"ncurses"],
    include_dirs = [],
    c_includes = ["HsUtil.h"],
    package_deps = ["lang", "concurrent", "posix"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "hssource",
    import_dirs = ["/usr/lib/ghc-5.02/imports/hssource"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HShssource"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["text"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "greencard",
    import_dirs = ["/usr/lib/ghc-5.02/imports/greencard"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSgreencard"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "xlib",
    import_dirs = ["/usr/lib/ghc-5.02/imports/xlib"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSxlib"],
    extra_libraries = ["HSxlib_cbits", "X11"],
    include_dirs = [],
    c_includes = ["HsXlib.h"],
    package_deps = ["greencard"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "HGL",
    import_dirs = ["/usr/lib/ghc-5.02/imports/HGL"],
    source_dirs = [],
    library_dirs = [],
    hs_libraries = ["HSHGL"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["xlib", "concurrent"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "docon",
    import_dirs = ["/src/docon/export"],
    source_dirs = [],
    library_dirs = ["/src/docon/export"],
    hs_libraries = ["HSdocon"],
    extra_libraries = ["HSdocon"],
    include_dirs = [],
    c_includes = [],
    package_deps = ["data"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "OpenGL",
    import_dirs = ["/usr/lib/ghc-5.02/imports/OpenGL"],
    source_dirs = [],
    library_dirs = ["/usr/lib/ghc-5.02"],
    hs_libraries = ["HSOpenGL"],
    extra_libraries = ["glut"],
    include_dirs = [],
    c_includes = [],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "c2hs",
    import_dirs =
["/usr/local/lib/c2hs-0.9.9/ghc5/import"],
    source_dirs = [],
    library_dirs = ["/usr/local/lib/c2hs-0.9.9/ghc5"],
    hs_libraries = ["c2hs"],
    extra_libraries = [],
    include_dirs = [],
    c_includes = [],
    package_deps = ["lang"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}
Package
   {name = "gtkhs",
    import_dirs =
      ["/usr/local/lib/gtk+hs-0.11.5/ghc5/import/glib",
       "/usr/local/lib/gtk+hs-0.11.5/ghc5/import/gdk",
       "/usr/local/lib/gtk+hs-0.11.5/ghc5/import/gtk",
      
"/usr/local/lib/gtk+hs-0.11.5/ghc5/import/gtkglarea"],
    source_dirs = [],
    library_dirs = ["/usr/local/lib/gtk+hs-0.11.5/ghc5"],
    hs_libraries = ["gtkglHS", "gtkHS", "gdkHS", "glibHS"],
    extra_libraries =
      ["glib", "gthread", "gmodule", "gdk", "gtk",
"gtkgl"],
    include_dirs = [],
    c_includes = [],
    package_deps = ["c2hs"],
    extra_ghc_opts = [],
    extra_cc_opts = [],
    extra_ld_opts = []}


Hsc static flags: -static -fignore-asserts
-ffoldr-build-on -fdo-eta-reduction
-fdo-lambda-eta-expansion -fcase-merge -flet-to-case
-flet-no-escape
*** Checking old interface for hs = Just "Bug.hs", hspp
= Just "Bug.hs":
Compiling Editor           ( Bug.hs, Bug.o )
*** Parser:
*** Renamer:
*** Typechecker:
*** Desugar:
    Result size = 41
*** Simplify:
    Result size = 52
    Result size = 24
    Result size = 24
*** Specialise:
    Result size = 24
*** Float out (not floating lambdas):
    Result size = 24
*** Float inwards:
    Result size = 24
*** Simplify:
    Result size = 19
    Result size = 19
*** Simplify:
    Result size = 19
*** Simplify:
    Result size = 19
*** Demand analysis:
    Result size = 19
*** Worker Wrapper binds:
    Result size = 19
*** GlomBinds:
*** Simplify:
    Result size = 19
*** Float out (not floating lambdas):
    Result size = 19
*** Common sub-expression:
    Result size = 19
*** Float inwards:
    Result size = 19
*** Simplify:
    Result size = 19
*** Tidy Core:
    Result size = 19
*** CorePrep:
    Result size = 19
*** Stg2Stg:
*** CodeGen:
*** CodeOutput:
*** Deleting temp files
Deleting: /tmp/ghc4255.s /tmp/ghc4255.hspp
Warning: deleting non-existent /tmp/ghc4255.hspp
ghc-5.02: panic! (the `impossible' happened, GHC
version 5.02):
        getRegister(x86,unary primop)
    (Prim deRefStablePtrzh Temp(B0StgAddr))

Please report it as a compiler bug to
glasgow-haskell-bugs@haskell.org,
or http://sourceforge.net/projects/ghc/.


I compiled this version of ghc myself, using the Debian
packaging scripts from the Debian ghc package.

Carl Witty

Change History

Changed 12 years ago by sewardj

  • status changed from assigned to closed
Logged In: YES 
user_id=50143

You can work around this by compiling with flag -fvia-C.

The fix prints a useful message to that effect.

Note: See TracTickets for help on using tickets.