Skip to content

Commit cd03acd

Browse files
authored
Merge pull request #317 from uwplse/release-1.4
Release Herbie 1.4
2 parents f775348 + 67cd4ad commit cd03acd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+659
-702
lines changed

.github/workflows/hamming.yml

Lines changed: 0 additions & 22 deletions
This file was deleted.

.github/workflows/tests.yml

Lines changed: 67 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
1-
name: Unit Tests
1+
name: Unit, Integration, and Plugin tests
22

33
on: [push]
44

5+
env:
6+
RUST_BACKTRACE: full
7+
58
jobs:
6-
build:
9+
unit-tests:
10+
name: "Unit Tests"
711
runs-on: ubuntu-latest
812
steps:
913
- name: "Install Packages"
@@ -14,3 +18,64 @@ jobs:
1418
- name: "Install dependencies"
1519
run: raco pkg install --name herbie --no-cache --auto src/
1620
- run: raco test src/ infra/
21+
22+
hamming:
23+
name: "Integration tests (Hamming)"
24+
runs-on: ubuntu-latest
25+
strategy:
26+
matrix:
27+
racket-version: [ '7.5', '7.6', '7.7' ]
28+
precision: [ 'binary32', 'binary64' ]
29+
steps:
30+
- name: "Install Packages"
31+
run: sudo apt-get install -y libmpfr6 libmpfr-dev
32+
- name: "Install Racket"
33+
uses: Bogdanp/[email protected]
34+
with:
35+
version: ${{ matrix.racket-version }}
36+
- uses: actions/checkout@master
37+
- name: "Install dependencies"
38+
run: raco pkg install --name herbie --no-cache --auto src/
39+
- run: racket infra/travis.rkt --precision ${{ matrix.precision }} --seed 0 bench/hamming/
40+
41+
softposit:
42+
name: "Plugin tests (Posits)"
43+
runs-on: ubuntu-latest
44+
needs: [ 'hamming' ]
45+
steps:
46+
- name: "Install Packages"
47+
run: sudo apt-get install -y libmpfr6 libmpfr-dev
48+
- name: "Install Racket"
49+
uses: Bogdanp/[email protected]
50+
- uses: actions/checkout@master
51+
- name: "Install dependencies"
52+
run: raco pkg install --name herbie --no-cache --auto src/
53+
- name: "Check out softposit-herbie master"
54+
uses: actions/checkout@master
55+
with:
56+
repository: herbie-fp/softposit-herbie
57+
path: plugin
58+
- name: "Install SoftPosit support"
59+
run: raco pkg install --no-cache --auto --name softposit-herbie plugin/
60+
- run: racket infra/travis.rkt --precision posit16 --seed 0 plugin/bench/posits.fpcore
61+
62+
complex:
63+
name: "Plugin tests (Complex)"
64+
runs-on: ubuntu-latest
65+
needs: [ 'hamming' ]
66+
steps:
67+
- name: "Install Packages"
68+
run: sudo apt-get install -y libmpfr6 libmpfr-dev
69+
- name: "Install Racket"
70+
uses: Bogdanp/[email protected]
71+
- uses: actions/checkout@master
72+
- name: "Install dependencies"
73+
run: raco pkg install --name herbie --no-cache --auto src/
74+
- name: "Check out complex-herbie master"
75+
uses: actions/checkout@master
76+
with:
77+
repository: herbie-fp/complex-herbie
78+
path: plugin
79+
- name: "Install Complex support"
80+
run: raco pkg install --no-cache --auto --name complex-herbie plugin/
81+
- run: racket infra/travis.rkt --seed 0 plugin/test.fpcore

.github/workflows/trigger-posits.yml

Lines changed: 0 additions & 24 deletions
This file was deleted.

infra/travis.rkt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
#lang racket
22

3-
(require racket/date racket/cmdline)
43
(require "../src/common.rkt" "../src/points.rkt" "../src/plugin.rkt")
5-
(require "../src/alternative.rkt" "../src/sandbox.rkt")
6-
(require "../src/syntax/read.rkt" "../src/datafile.rkt")
4+
(require "../src/alternative.rkt" "../src/sandbox.rkt" "../src/syntax/read.rkt")
75

86
;; Load all the plugins
97
(load-herbie-plugins)

src/config.rkt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
(if (equal? out "") default out))
8282
default))
8383

84-
(define *herbie-version* "1.3")
84+
(define *herbie-version* "1.4")
8585

8686
(define *hostname* (run-command "hostname"))
8787

src/core/alt-table.rkt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
(require racket/hash)
44
(require "../common.rkt" "../alternative.rkt" "../points.rkt"
5-
"../interface.rkt" "../timeline.rkt" "../programs.rkt")
5+
"../timeline.rkt" "../programs.rkt")
66

77
(provide
88
(contract-out

src/core/periodicity.rkt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
(require racket/match)
2020
(require "../common.rkt" "../programs.rkt" "../alternative.rkt" "../points.rkt"
21-
"../float.rkt" "../interface.rkt")
21+
"../interface.rkt")
2222

2323
(struct annotation (expr loc type coeffs) #:transparent)
2424
(struct lp (loc periods) #:prefab)

src/core/reduce.rkt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,6 @@
1212
(define fn-inverses
1313
(map rule-input (filter (λ (rule) (variable? (rule-output rule))) (*rules*))))
1414

15-
(define (eval-const-expr expr)
16-
;; When we are in nonffi mode, we don't use repr, so pass in #f
17-
((eval-prog `(λ () ,expr) 'nonffi #f)))
18-
1915
(define (simplify expr*)
2016
(define expr ((get-evaluator) expr*))
2117
(match expr

src/core/simplify.rkt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
simplify-batch-egg]
4949
[else
5050
(warn 'simplify #:url "faq.html#egg-herbie"
51-
"Falling back on racket egraph because egg-herbie package not installed")
51+
"Falling back on regraph because egg-herbie package not installed")
5252
simplify-batch-regraph]))
5353

5454
(debug #:from 'simplify "Simplifying using " driver ":\n " (string-join (map ~a exprs) "\n "))

src/datafile.rkt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#lang racket
22

33
(require racket/date json)
4-
(require "common.rkt" "float.rkt")
4+
(require "common.rkt")
55

66
(provide
77
(struct-out table-row) (struct-out report-info)

0 commit comments

Comments
 (0)