[GHC] #11037: Expose pop count primitives to cmm

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: Type: feature | Status: new request | Priority: normal | Milestone: Component: Compiler | Version: 7.10.2 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- I can't actually invoke the various `MO_PopCnt width` prim ops from the literal Cmm syntax. Would it be possible to expose them via `machOps` in `CmmParse.y` as `popcnt8`, `popcnt16`, etc.? This would enable me to generate much more efficient code. I started hacking up a mostly Cmm-side implementation of a HashMap. This lets me directly index into fields in data constructors and the like, eliding the indirection of the array machinery and allowing a much more direct implementation. Other than this, until this point it has been going remarkably smoothly. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: bgamari Type: feature request | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.10.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * owner: => bgamari Comment: Sure. Patch coming. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: bgamari Type: feature request | Status: patch Priority: normal | Milestone: Component: Compiler | Version: 7.10.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => patch -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: bgamari Type: feature request | Status: patch Priority: normal | Milestone: Component: Compiler | Version: 7.10.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: PopCnt Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1402 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * testcase: => PopCnt * differential: => Phab:D1402 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11037: Expose pop count primitives to cmm
-------------------------------------+-------------------------------------
Reporter: ekmett | Owner: bgamari
Type: feature request | Status: patch
Priority: normal | Milestone:
Component: Compiler | Version: 7.10.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case: PopCnt
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D1402
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Ben Gamari

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: bgamari Type: feature request | Status: closed Priority: normal | Milestone: Component: Compiler | Version: 7.10.2 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: PopCnt Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1402 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: patch => closed * resolution: => fixed Comment: It has been done. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11037: Expose pop count primitives to cmm -------------------------------------+------------------------------------- Reporter: ekmett | Owner: bgamari Type: feature request | Status: closed Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 7.10.2 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: PopCnt Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1402 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * milestone: => 8.0.1 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11037#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC