TestConstBool; Test allocaCStrs
This commit is contained in:
@@ -27,6 +27,12 @@ import (
|
|||||||
"golang.org/x/tools/go/ssa"
|
"golang.org/x/tools/go/ssa"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func TestConstBool(t *testing.T) {
|
||||||
|
if v, ok := constBool(nil); v || ok {
|
||||||
|
t.Fatal("constBool?")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestToBackground(t *testing.T) {
|
func TestToBackground(t *testing.T) {
|
||||||
if v := toBackground(""); v != llssa.InGo {
|
if v := toBackground(""); v != llssa.InGo {
|
||||||
t.Fatal("toBackground:", v)
|
t.Fatal("toBackground:", v)
|
||||||
@@ -144,6 +150,7 @@ func TestErrBuiltin(t *testing.T) {
|
|||||||
test("alloca", func(ctx *context) { ctx.alloca(nil, nil) })
|
test("alloca", func(ctx *context) { ctx.alloca(nil, nil) })
|
||||||
test("allocaCStr", func(ctx *context) { ctx.allocaCStr(nil, nil) })
|
test("allocaCStr", func(ctx *context) { ctx.allocaCStr(nil, nil) })
|
||||||
test("allocaCStrs", func(ctx *context) { ctx.allocaCStrs(nil, nil) })
|
test("allocaCStrs", func(ctx *context) { ctx.allocaCStrs(nil, nil) })
|
||||||
|
test("allocaCStrs(Nonconst)", func(ctx *context) { ctx.allocaCStrs(nil, []ssa.Value{nil, &ssa.Parameter{}}) })
|
||||||
test("string", func(ctx *context) { ctx.string(nil, nil) })
|
test("string", func(ctx *context) { ctx.string(nil, nil) })
|
||||||
test("stringData", func(ctx *context) { ctx.stringData(nil, nil) })
|
test("stringData", func(ctx *context) { ctx.stringData(nil, nil) })
|
||||||
test("funcAddr", func(ctx *context) { ctx.funcAddr(nil, nil) })
|
test("funcAddr", func(ctx *context) { ctx.funcAddr(nil, nil) })
|
||||||
|
|||||||
@@ -144,12 +144,14 @@ func (b Builder) Alloca(n Expr) (ret Expr) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* TODO(xsw):
|
||||||
// AllocaU allocates uninitialized space for n*sizeof(elem) bytes.
|
// AllocaU allocates uninitialized space for n*sizeof(elem) bytes.
|
||||||
func (b Builder) AllocaU(elem Type, n ...int64) (ret Expr) {
|
func (b Builder) AllocaU(elem Type, n ...int64) (ret Expr) {
|
||||||
prog := b.Prog
|
prog := b.Prog
|
||||||
size := SizeOf(prog, elem, n...)
|
size := SizeOf(prog, elem, n...)
|
||||||
return Expr{b.Alloca(size).impl, prog.Pointer(elem)}
|
return Expr{b.Alloca(size).impl, prog.Pointer(elem)}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
// AllocaCStr allocates space for copy it from a Go string.
|
// AllocaCStr allocates space for copy it from a Go string.
|
||||||
func (b Builder) AllocaCStr(gostr Expr) (ret Expr) {
|
func (b Builder) AllocaCStr(gostr Expr) (ret Expr) {
|
||||||
@@ -230,6 +232,7 @@ func (b Builder) ArrayAlloca(telem Type, n Expr) (ret Expr) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* TODO(xsw):
|
||||||
// ArrayAlloc allocates zero initialized space for an array of n elements of type telem.
|
// ArrayAlloc allocates zero initialized space for an array of n elements of type telem.
|
||||||
func (b Builder) ArrayAlloc(telem Type, n Expr) (ret Expr) {
|
func (b Builder) ArrayAlloc(telem Type, n Expr) (ret Expr) {
|
||||||
prog := b.Prog
|
prog := b.Prog
|
||||||
@@ -239,6 +242,7 @@ func (b Builder) ArrayAlloc(telem Type, n Expr) (ret Expr) {
|
|||||||
ret.Type = prog.Pointer(telem)
|
ret.Type = prog.Pointer(telem)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user