1. 14 Dec, 2018 1 commit
  2. 09 Aug, 2018 1 commit
  3. 08 Jun, 2018 1 commit
  4. 02 Jun, 2018 1 commit
  5. 30 May, 2018 1 commit
  6. 27 Sep, 2017 1 commit
    • Moritz Angermann's avatar
      llvm-targets: drop soft-float · 60b06456
      Moritz Angermann authored
      Summary:
      The llvm-targets file records `mattr` values, and
      while interrogating `clang` for the target, we might
      stumble upon `+soft-float-abi`, however ghc does not support
      full soft-float, and as such passing `+soft-float` to `llc`
      will result in segfaults for any function passing float
      registers F1, ... in the ARM Instruction Selection Pass.
      
      Reviewers: bgamari, austin
      
      Reviewed By: bgamari
      
      Subscribers: rwbarton, thomie
      
      Differential Revision: https://phabricator.haskell.org/D4030
      60b06456
  7. 23 Sep, 2017 1 commit
  8. 06 Sep, 2017 1 commit
    • Moritz Angermann's avatar
      Clean up opt and llc · 22733532
      Moritz Angermann authored
      The LLVM backend shells out to LLVMs `opt` and `llc` tools. This clean
      up introduces a shared data structure to carry the arguments we pass to
      each tool so that corresponding flags are next to each other. It drops
      the hard coded data layouts in favor of using `-mtriple` and have LLVM
      infer them. Furthermore we add `clang` as a proper tool, so we don't
      rely on assuming that `clang` is called `clang` on the `PATH` when using
      `clang` as the assembler.  Finally this diff also changes the type of
      `optLevel` from `Int` to `Word`, as we do not have negative optimization
      levels.
      
      Reviewers: erikd, hvr, austin, rwbarton, bgamari, kavon
      
      Reviewed By: kavon
      
      Subscribers: michalt, Ericson2314, ryantrinkle, dfeuer, carter, simonpj,
      kavon, simonmar, thomie, erikd, snowleopard
      
      Differential Revision: https://phabricator.haskell.org/D3352
      22733532