mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-07-26 06:38:42 +00:00
404b65941a
This allows for adding more advanced tests, for example tests that use the compiler package so that test sources can be written in Go instead of LLVM IR.
33 lines
729 B
Go
33 lines
729 B
Go
package transform_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/tinygo-org/tinygo/transform"
|
|
"tinygo.org/x/go-llvm"
|
|
)
|
|
|
|
func TestOptimizeStringToBytes(t *testing.T) {
|
|
t.Parallel()
|
|
testTransform(t, "testdata/stringtobytes", func(mod llvm.Module) {
|
|
// Run optimization pass.
|
|
transform.OptimizeStringToBytes(mod)
|
|
})
|
|
}
|
|
|
|
func TestOptimizeStringEqual(t *testing.T) {
|
|
t.Parallel()
|
|
testTransform(t, "testdata/stringequal", func(mod llvm.Module) {
|
|
// Run optimization pass.
|
|
transform.OptimizeStringEqual(mod)
|
|
})
|
|
}
|
|
|
|
func TestOptimizeReflectImplements(t *testing.T) {
|
|
t.Parallel()
|
|
testTransform(t, "testdata/reflect-implements", func(mod llvm.Module) {
|
|
// Run optimization pass.
|
|
transform.OptimizeReflectImplements(mod)
|
|
})
|
|
}
|