# add new builtin function \`@tan\` · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/09f1d62bdfb5794534b21d1cd9dafc4822697d60)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: 09f1d62bdfb5794534b21d1cd9dafc4822697d60

Requested commit: 09f1d62bdfb5794534b21d1cd9dafc4822697d60

Commit: 09f1d62bdfb5794534b21d1cd9dafc4822697d60

Tree: 437f6c19a6f0f16ef29fb91513176bb8aa0c91f0

Author: Andrew Kelley

Committer: Andrew Kelley

## Message

```
add new builtin function `@tan`

The reason for having `@tan` is that we already have `@sin` and `@cos`
because some targets have machine code instructions for them, but in the
case that the implementation needs to go into compiler-rt, sin, cos, and
tan all share a common dependency which includes a table of data. To
avoid duplicating this table of data, we promote tan to become a builtin
alongside sin and cos.

ZIR: The tag enum is at capacity so this commit moves
`field_call_bind_named` to be `extended`. I measured this as one of
the least used tags in the zig codebase.

Fix libc math suffix for `f32` being wrong in both stage1 and stage2.
stage1: add missing libc prefix for float functions.

```

## Parents

- [c4eaff6665132287d05272bef8890e4607ff017c](https://git.cafe/gitcafe/zig/commit/c4eaff6665132287d05272bef8890e4607ff017c?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/09f1d62bdfb5794534b21d1cd9dafc4822697d60?format=markdown)
